Andorid优化系统启动速度之启用DEXPREOPT

1、修改 DEXPREOPT_BOOT_JARS 

将jar包名通过TARGET_ADDITIONAL_BOOTCLASSPATH加入到 DEXPREOPT_BOOT_JARS。build/core/dex_preopt.mk,将jar预编译成odex,优化系统启动速度

DEXPREOPT_BOOT_JARS := $(DEXPREOPT_BOOT_JARS):$(TARGET_ADDITIONAL_BOOTCLASSPATH)


2、修改 TARGET_ADDITIONAL_BOOTCLASSPATH 

将jar包名加入到TARGET_ADDITIONAL_BOOTCLASSPATH。device/qcom/msm8226/BoardConfig.mk

TARGET_ADDITIONAL_BOOTCLASSPATH := qcmediaplayer:WfdCommon:oem-services:qcom.fmradio

3、修改 BOOTCLASSPATH

将jar包绝对路径加入到 BOOTCLASSPATH,这里需要与DEXPREOPT_BOOT_JARS对应起来,否则系统无法启动。

  1)赋值  system/core/rootdir/init.rc 

# setup the global environment
        export PATH /sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin
        export LD_LIBRARY_PATH /vendor/lib:/system/lib
        export ANDROID_BOOTLOGO 1
        export ANDROID_ROOT /system
        export ANDROID_ASSETS /system/app
        export ANDROID_DATA /data
        export ANDROID_STORAGE /storage
        export ASEC_MOUNTPOINT /mnt/asec
        export LOOP_MOUNTPOINT /mnt/obb
        export BOOTCLASSPATH /system/framework/core.jar:/system/framework/core-junit.jar:/system/framework/bouncycastle.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/telephony-common.jar:/system/framework/voip-common.jar:/system/framework/mms-common.jar:/system/framework/android.policy.jar:/system/framework/services.jar:/system/framework/apache-xml.jar:/system/framework/telephony-msim.jar



  2)追加赋值  device/qcom/msm8226/init.target.rc

  on init
    export BOOTCLASSPATH ${BOOTCLASSPATH}:/system/framework/qcmediaplayer.jar:/system/framework/WfdCommon.jar:/system/framework/oem-services.jar:/system/framework/qcom.fmradio.jar




备注
把jar包优化成odex包:
在编译脚本.mk里面定义 "WITH_DEXPREOPT:=true",这样做,系统在第一次起来的速度比较快。开启了pre-dexopt的系统,jar有依赖性的优化,所以每次修改了java代码,都必须把out目录下的.odex文件清空,然后重新编译。
清空.odex文件可以进入out目录,执行:
find -name "*.odex" | xargs rm -f




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值