Home | History | Annotate | Download | only in product
      1 #
      2 # Copyright (C) 2017 The Android Open Source Project
      3 #
      4 # Licensed under the Apache License, Version 2.0 (the "License");
      5 # you may not use this file except in compliance with the License.
      6 # You may obtain a copy of the License at
      7 #
      8 #      http://www.apache.org/licenses/LICENSE-2.0
      9 #
     10 # Unless required by applicable law or agreed to in writing, software
     11 # distributed under the License is distributed on an "AS IS" BASIS,
     12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     13 # See the License for the specific language governing permissions and
     14 # limitations under the License.
     15 #
     16 
     17 # Sets Android Go recommended default values for propreties.
     18 
     19 # Set lowram options
     20 PRODUCT_PROPERTY_OVERRIDES += \
     21      ro.config.low_ram=true \
     22      ro.lmk.critical_upgrade=true \
     23      ro.lmk.upgrade_pressure=40 \
     24      ro.lmk.downgrade_pressure=60 \
     25      ro.lmk.kill_heaviest_task=false \
     26      ro.statsd.enable=false
     27 
     28 # set threshold to filter unused apps
     29 PRODUCT_PROPERTY_OVERRIDES += \
     30      pm.dexopt.downgrade_after_inactive_days=10
     31 
     32 
     33 # Speed profile services and wifi-service to reduce RAM and storage.
     34 PRODUCT_SYSTEM_SERVER_COMPILER_FILTER := speed-profile
     35 
     36 # Always preopt extracted APKs to prevent extracting out of the APK for gms
     37 # modules.
     38 PRODUCT_ALWAYS_PREOPT_EXTRACTED_APK := true
     39 
     40 # Use a profile based boot image for this device. Note that this is currently a
     41 # generic profile and not Android Go optimized.
     42 PRODUCT_USE_PROFILE_FOR_BOOT_IMAGE := true
     43 PRODUCT_DEX_PREOPT_BOOT_IMAGE_PROFILE_LOCATION := frameworks/base/config/boot-image-profile.txt
     44 
     45 # set the compiler filter for shared apks to quicken.
     46 # Rationale: speed has a lot of dex code expansion, it uses more ram and space
     47 # compared to quicken. Using quicken for shared APKs on Go devices may save RAM.
     48 # Note that this is a trade-off: here we trade clean pages for dirty pages,
     49 # extra cpu and battery. That's because the quicken files will be jit-ed in all
     50 # the processes that load of shared apk and the code cache is not shared.
     51 # Some notable apps that will be affected by this are gms and chrome.
     52 # b/65591595.
     53 PRODUCT_PROPERTY_OVERRIDES += \
     54      pm.dexopt.shared=quicken
     55 
     56 # Default heap sizes. Allow up to 256m for large heaps to make sure a single app
     57 # doesn't take all of the RAM.
     58 PRODUCT_PROPERTY_OVERRIDES += dalvik.vm.heapgrowthlimit=128m
     59 PRODUCT_PROPERTY_OVERRIDES += dalvik.vm.heapsize=256m
     60 
     61 # Do not generate libartd.
     62 PRODUCT_ART_TARGET_INCLUDE_DEBUG_BUILD := false
     63 
     64 # Strip the local variable table and the local variable type table to reduce
     65 # the size of the system image. This has no bearing on stack traces, but will
     66 # leave less information available via JDWP.
     67 PRODUCT_MINIMIZE_JAVA_DEBUG_INFO := true
     68