我正在尝试为我的GSM Galaxy Nexus(maguro)编译一个deodexed aosp。我在谷歌搜索,没有结果。似乎没有允许编译deodexed系统的标志。
但是在makefile build / core / main.mk中我发现了这个:
## precise GC ##
ifneq ($(filter dalvik.gc.type-precise,$(PRODUCT_TAGS)),)
# Enabling type-precise GC results in larger optimized DEX files. The
# additional storage requirements for ".odex" files can cause /system
# to overflow on some devices, so this is configured separately for
# each product.
ADDITIONAL_BUILD_PROPERTIES += dalvik.vm.dexopt-flags=m=y
endif
有什么想法吗?感谢
答案 0 :(得分:11)
要实际获得一个deodexed版本,我必须定义它们:
export DISABLE_DEXPREOPT=true
export WITH_DEXPREOPT=false
然后'make clean'。
或者我也试过这个:
make DISABLE_DEXPREOPT=true WITH_DEXPREOPT=false -j8 otapackage
答案 1 :(得分:1)
您可以使用可以组合odex和apk文件的backsmali
baksmali -a [api_level] -x [odex_file] -d [framework_dir]
或者更改
中的WITH_DEXPREOPT环境变量build/target/board/generic/BoardConfig.mk
答案 2 :(得分:0)
您应该编写一个使用smali的shell脚本(或者在Windows上使用xUltimate)。