android源码模块编译出现的问题

来源:互联网 发布:mac 批量保存网页图片 编辑:程序博客网 时间:2024/04/23 19:25

全编andorid后,单独修改编译一个framwork模块,或者app, make snod会有如下告警信息:
Warning: with dexpreopt enabled, you may need a full rebuild

使用这样make snod 出来的镜像,有的时候会发现镜像缺失,我出现的情况是只有system,img 。userdata.img和ramdisk.img都不见了,

或者是镜像齐全但是内核不能启动,模拟器一直停留在“android”标志状态。
查看log发现有如下错误打印:
DexOpt: mismatch dep signature for '/system/framework/framework.odex

查看makefile有这样的语句
# Enable dex-preoptimization to speed up the first boot sequence
# of an SDK AVD. Note that this operation only works on Linux for now
# 看起来这是一项为了加快第一次启动速度的特性
ifeq (true,$(WITH_DEXPREOPT))
$(warning Warning: with dexpreopt enabled, you may need a full rebuild.)
endif

修改方法1:
build/target/board/generic/BoardConfig.mk


ifeq ($(HOST_OS),linux)
  ifeq ($(WITH_DEXPREOPT),)
    WITH_DEXPREOPT := true  #把这个改为false
  endif
endif

修改方法2:
全编译的时候加载参数
make showcommands WITH_DEXPREOPT=false

这样编译出来的结果,如果以后单独修改打包运行,就不会有上述问题了。
0 0
原创粉丝点击