How to create a CM system application without odex?

When I create a CM7 system application (for example, ADWLauncher), I switch to the ADWLauncher folder and run the “mm” command, then I get the .apk and .odex files. How can I just get the .apk file with dex in it. I mean, should I change somewhere in Android.mk or generic.mk so that the compilation gives only the result of an apk file that can directly run.

+4
source share
3 answers

Try mm WITH_DEXPREOPT=false -B

+2
source

You can use backsmali which can combine odex and apk files

  baksmali -a [api_level] -x [odex_file] -d [framework_dir]

Or change the WITH_DEXPREOPT environment variable to

  build / target / board / generic / BoardConfig.mk
+1
source

This usually happens (at least for me) when I did not declare the device for which I create for breakfast . For example, without starting breakfast hammerhead I got Dialer.apk and arm/Dialer.odex in the output directory. In addition, the device refused to run the binary, even after the .odex file was .odex .

Running breakfast first calls make to create the only valid Dialer.apk that installs cleanly (using adb root / remount / push ) on my device.

0
source

Source: https://habr.com/ru/post/1396968/


All Articles