Empty output jar error? - Android Software/Hacking General [Developers Only]

For some strange reason, whenever I compile CyanogenMod I run into this error: Error: The output jar is empty. Did you specify the proper '-keep' options?
This is the terminal output from above that:
Code:
target Dex: DeskClockTests
Copying: out/target/common/obj/APPS/DeskClockTests_intermediates/progaurd.classes.dex
target Package: DeskClockTests (out/target/product/sunfire/obj/APPS/DeskClockTests_intermediates/package.apk)
'out/target/common/obj/APPS/DeskClockTests_intermediates//classes.dex' as 'classes.dex'...
Copying: out/target/common/obj/APPS/DockAudio_intermediates/emma_out/lib/classes-jarjar.jar
Proguard: out/target/common/obj/APPS/DockAudio_intermediates/proguard.classes.jar
ProGuard, version 4.4
Reading program jar [/home/mike/android/system/out/target/common/obj/APPS/DockAudio_intermediates/classes.jar]
Reading library jar [/home/mike/android/system/out/target/common/obj/JAVA_LIBRARIES/core_intermediates/classes.jar]
Reading library jar [/home/mike/android/system/out/target/common/obj/JAVA_LIBRARIES/core-junit_intermediates/classes.jar]
Reading library jar [/home/mike/android/system/out/target/common/obj/JAVA_LIBRARIES/ext_intermediates/classes.jar]
Reading library jar [/home/mike/android/system/out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes.jar]
Error: The output jar is empty. Did you specify the proper '-keep' options?
make: *** [out/target/common/obj/APPS/DockAudio_intermediates/proguard.classes.jar] Error 1
From what I understand, it is an issue with ProGuard not knowing what to do with an empty .jar file? Does anyone know a way I can bypass this, by either telling ProGuard to skip it or just not compiling that file?

bump... i really need help with this and Google can't help me out.

In the Android.mk file for that project, add "LOCAL_PROGUARD_ENABLED := disabled" to prevent ProGuard from optimizing it.

Related

{CyanogenMod} Karbonn A9+ (Compiling Errors and solutions)

Please post your errors here. We (I and other esteemed devs) will try to solve them.
reserved for future.
reserved for future. 2222
reserved for future. another one...
By chrgegdoc
Code:
Before I get that error, I encountered these first:
building with
Code:
make -j4
gives me the following error:
Code:
make: *** No rule to make target `device/karbonn/a9plus/prebuilt/system/lib/lib/system/libcamera_client.so', needed by `out/target/product/a9plus/system/lib/libcamera_client.so'. Stop.
make: *** Waiting for unfinished jobs....
Notice file: external/icu4c/common/NOTICE -- out/host/linux-x86/obj/NOTICE_FILES/src//lib/libicuuc.so.txt
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
retyping
Code:
make
without
Code:
-j4
"solves" that but I encounter the following error:
Code:
device/karbonn/a9plus/overlay/frameworks/base/core/res/res/values/config.xml:135: error: Resource does not already exist in overlay at 'config_tether_upstream_regexs'; use <add-resource> to add.
device/karbonn/a9plus/overlay/frameworks/base/core/res/res/values/config.xml:136: error: Resource at config_tether_upstream_regexs appears in overlay but not in the base package; use <add-resource> to add.
device/karbonn/a9plus/overlay/frameworks/base/core/res/res/values/config.xml:137: error: Resource at config_tether_upstream_regexs appears in overlay but not in the base package; use <add-resource> to add.
device/karbonn/a9plus/overlay/frameworks/base/core/res/res/values/config.xml:149: error: Resource at config_tether_dun_required appears in overlay but not in the base package; use <add-resource> to add.
make: *** [out/target/common/obj/APPS/framework-res_intermediates/package-export.apk] Error 1
make: *** Deleting file `out/target/common/obj/APPS/framework-res_intermediates/package-export.apk'
So I deleted the overlay folder from device/karbonn/a9plus and it would go through until I get the error at my previous PM
Another one by chrgegdoc
checked out your new device tree and tried building from it using
Code:
make
I get the following error:
Code:
Code:
/bin/bash: -c: line 0: unexpected EOF while looking for matching `"'
/bin/bash: -c: line 1: syntax error: unexpected end of file
make: *** [out/target/product/a9plus/obj/SHARED_LIBRARIES/libhardware_legacy_intermediates/power/power.o] Error 1
By the way, I am building CM9, haven't tried CM10 though.
arunmcops said:
Another one by chrgegdoc
checked out your new device tree and tried building from it using
Code:
make
I get the following error:
Code:
Code:
/bin/bash: -c: line 0: unexpected EOF while looking for matching `"'
/bin/bash: -c: line 1: syntax error: unexpected end of file
make: *** [out/target/product/a9plus/obj/SHARED_LIBRARIES/libhardware_legacy_intermediates/power/power.o] Error 1
By the way, I am building CM9, haven't tried CM10 though.
Click to expand...
Click to collapse
Try to start with make -j1
arunmcops said:
Another one by chrgegdoc
checked out your new device tree and tried building from it using
Code:
make
I get the following error:
Code:
Code:
/bin/bash: -c: line 0: unexpected EOF while looking for matching `"'
/bin/bash: -c: line 1: syntax error: unexpected end of file
make: *** [out/target/product/a9plus/obj/SHARED_LIBRARIES/libhardware_legacy_intermediates/power/power.o] Error 1
By the way, I am building CM9, haven't tried CM10 though.
Click to expand...
Click to collapse
arunmcops said:
By chrgegdoc
Code:
Before I get that error, I encountered these first:
building with
Code:
make -j4
gives me the following error:
Code:
make: *** No rule to make target `device/karbonn/a9plus/prebuilt/system/lib/lib/system/libcamera_client.so', needed by `out/target/product/a9plus/system/lib/libcamera_client.so'. Stop.
make: *** Waiting for unfinished jobs....
Notice file: external/icu4c/common/NOTICE -- out/host/linux-x86/obj/NOTICE_FILES/src//lib/libicuuc.so.txt
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
retyping
Code:
make
without
Code:
-j4
"solves" that but I encounter the following error:
Code:
device/karbonn/a9plus/overlay/frameworks/base/core/res/res/values/config.xml:135: error: Resource does not already exist in overlay at 'config_tether_upstream_regexs'; use <add-resource> to add.
device/karbonn/a9plus/overlay/frameworks/base/core/res/res/values/config.xml:136: error: Resource at config_tether_upstream_regexs appears in overlay but not in the base package; use <add-resource> to add.
device/karbonn/a9plus/overlay/frameworks/base/core/res/res/values/config.xml:137: error: Resource at config_tether_upstream_regexs appears in overlay but not in the base package; use <add-resource> to add.
device/karbonn/a9plus/overlay/frameworks/base/core/res/res/values/config.xml:149: error: Resource at config_tether_dun_required appears in overlay but not in the base package; use <add-resource> to add.
make: *** [out/target/common/obj/APPS/framework-res_intermediates/package-export.apk] Error 1
make: *** Deleting file `out/target/common/obj/APPS/framework-res_intermediates/package-export.apk'
So I deleted the overlay folder from device/karbonn/a9plus and it would go through until I get the error at my previous PM
Click to expand...
Click to collapse
Overlay packages changed...
I incorporated your changes and it seems that error is gone while using
Code:
make -j1
However, I encountered an new error
Code:
device/karbonn/a9plus/overlay/frameworks/base/core/res/res/values/config.xml:199: error: Resource at config_networkLocationProviderPackageName appears in overlay but not in the base package; use <add-resource> to add.
device/karbonn/a9plus/overlay/frameworks/base/core/res/res/values/config.xml:202: error: Resource at config_geocodeProviderPackageName appears in overlay but not in the base package; use <add-resource> to add.
make: *** [out/target/common/obj/APPS/framework-res_intermediates/package-export.apk] Error 1
make: *** Deleting file `out/target/common/obj/APPS/framework-res_intermediates/package-export.apk'
EDIT:
So I tried deleting line 199 and 202 from the config.xml at the build went through.
But, I encountered the previous error
Code:
target thumb C: libhardware_legacy <= hardware/libhardware_legacy/power/power.c
/bin/bash: -c: line 0: unexpected EOF while looking for matching `"'
/bin/bash: -c: line 1: syntax error: unexpected end of file
make: *** [out/target/product/a9plus/obj/SHARED_LIBRARIES/libhardware_legacy_intermediates/power/power.o] Error 1
I don't know if they are connected with each other. I conclude that building with make -j1 doesn't solve the EOF error.
Compile Error
I also confirm the same error...
build with make -j1
Code:
<command-line>: warning: "REFRESH_RATE" redefined
<command-line>: warning: this is the location of the previous definition
system/core/libpixelflinger/codeflinger/disassem.c:710: warning: initialization from incompatible pointer type
target thumb C: libhardware_legacy <= hardware/libhardware_legacy/power/power.c
/bin/bash: -c: line 0: unexpected EOF while looking for matching `"'
/bin/bash: -c: line 1: syntax error: unexpected end of file
make: *** [out/target/product/a9plus/obj/SHARED_LIBRARIES/libhardware_legacy_intermediates/power/power.o] Error 1
I used a different device tree (my own) and now I am getting this error:
Code:
make: *** No rule to make target `vendor/qcom/s100/proprietary/lib/libaudioalsa.so', needed by `out/target/product/s100/obj/lib/libaudioalsa.so'. Stop.
What I did is add some lines in device.mk and it seems to compile (hopefully)
EDIT:
Still getting the same error. I have no idea on how to fix this
Plz post ur device tree ...
Sent from my Karbonn A9+ using Tapatalk HD
chrgegdoc said:
I used a different device tree (my own) and now I am getting this error:
Code:
make: *** No rule to make target `vendor/qcom/s100/proprietary/lib/libaudioalsa.so', needed by `out/target/product/s100/obj/lib/libaudioalsa.so'. Stop.
What I did is add some lines in device.mk and it seems to compile (hopefully)
EDIT:
Still getting the same error. I have no idea on how to fix this
Click to expand...
Click to collapse
U need to copy proprietary files of your device to vendor/qcom/s100 by either running command from your device folder or just download the files and put it to vendor/qcom/s100 .
Edit : I think this is the files u need . confirm that is it the one and if that is the one CD to vendor/qcom dir and issue following command
Code:
git clone https://github.com/liquid-moto/android_vendor_qcom_proprietary s100
It will clone those files to vendor/qcom/
Than go to vendor/qcom/s100 and rename system to proprietary and than start the build....
Hope u got it fixed
Sent from my SAMSUNG-SGH-I747 using xda app-developers app
Use libaudioalsa.so from /system/lib and modify mk files. Also mail me device folder.
Sent from my Karbonn A9+ using Tapatalk HD
Will Try
Arun will you modify your device tree.. I will try to compile again..
Will try for qcom/s100 also.. Both are same build.. Any way.. Device can be changed on .prop later..!!
---------- Post added at 07:04 PM ---------- Previous post was at 06:56 PM ----------
chrgegdoc said:
I used a different device tree (my own) and now I am getting this error:
Code:
make: *** No rule to make target `vendor/qcom/s100/proprietary/lib/libaudioalsa.so', needed by `out/target/product/s100/obj/lib/libaudioalsa.so'. Stop.
What I did is add some lines in device.mk and it seems to compile (hopefully)
EDIT:
Still getting the same error. I have no idea on how to fix this
Click to expand...
Click to collapse
Will share your device tree..??
I'll post my device tree after I try x10forevers' suggestion.
UPDATE:
So I tried x10forevers' suggestion. I modified proprietary-files.txt and extracted the files. However, some files were not found, namely:
Code:
libmm-color-convertor.so
libmmparser_divxdrmlib.so
a225_pfp.fw
a225_pm4.fw
a225p5_pm4.fw
a300_pfp.fw
a300_pm4.fw
leia_pfp_470.fw
leia_pm4_470.fw
libC2D2.so
UPDATE1:
what should be the value for TARGET_ARCH_VARIANT?
UPDATE 2:
arunmcops, you might want to edit out the '6' from your device.mk
See this line:
Code:
frameworks/base/data/etc/android.soft6ware.sip.voip.xml:system/etc/permissions/android.software.sip.voip.xml \
Prince.Paul.K said:
Arun will you modify your device tree.. I will try to compile again..
Will try for qcom/s100 also.. Both are same build.. Any way.. Device can be changed on .prop later..!!
---------- Post added at 07:04 PM ---------- Previous post was at 06:56 PM ----------
Will share your device tree..??
Click to expand...
Click to collapse
GITHUB
Your github id ?
chrgegdoc said:
I'll post my device tree after I try x10forevers' suggestion.
UPDATE:
So I tried x10forevers' suggestion. I modified proprietary-files.txt and extracted the files. However, some files were not found, namely:
Code:
libmm-color-convertor.so
libmmparser_divxdrmlib.so
a225_pfp.fw
a225_pm4.fw
a225p5_pm4.fw
a300_pfp.fw
a300_pm4.fw
leia_pfp_470.fw
leia_pm4_470.fw
libC2D2.so
UPDATE1:
what should be the value for TARGET_ARCH_VARIANT?
UPDATE 2:
arunmcops, you might want to edit out the '6' from your device.mk
See this line:
Code:
frameworks/base/data/etc/android.soft6ware.sip.voip.xml:system/etc/permissions/android.software.sip.voip.xml \
Click to expand...
Click to collapse
TARGET_ARCH_VARIANT := armv7-a-neon
TARGET_ARCH_VARIANT_CPU := cortex-a5
TARGET_ARCH_VARIANT_FPU := neon
@Chargegdoc
I think that fw files are in the clone files I have told you in earlier post
Check it
Sent from my SAMSUNG-SGH-I747 using xda app-developers app
Here is my GitHub
Please check for errors. I just copied all the folders from karbonna9plus and made a few changes.
EDIT:
@x10forevers
Indeed it is there.
I got another error:
Code:
make: *** No rule to make target `device/qcom/s100/prebuilt/system/etc/vold.fstab_use_tflashvold.fstab_use_emmc', needed by `out/target/product/s100/system/etc/vold.fstab_use_tflash'. Stop.
Edited the device.mk and changed the following lines:
Code:
device/qcom/s100/prebuilt/system/etc/vold.fstab_use_tflashvold.fstab_use_emmc:system/etc/vold.fstab_use_tflash
to
Code:
device/qcom/s100/prebuilt/system/etc/vold.fstab_use_tflash:system/etc/vold.fstab_use_tflash
I'll sleep for now and continue working on this the next day.
---------- Post added at 01:23 AM ---------- Previous post was at 12:50 AM ----------
There's a LOT of make: *** No rule to make target errors. I'll try to fix these tomorrow.

[Q] Just started building AOSP... A little help...

Hey guys. I have a few questions about building AOSP. I have just started "ROM developing" if you want to call it, and need help. First off, how do I change the Device Name, Model Number, etc. in the AOSP source code? I am not using a kitchen to do this, as I am building 5.0. Also, how do I make a flashable zip instead if fastboot flashable .img's. And last question: how do I include pre-built apps (APKs) into a build? Thanks!
1st - iirc, this can be done with build prop overrides. 2nd - 'make otapackage'. 3rd, argh, can't remember.
Sent from my Nexus 5 using Tapatalk
More help...
The first time I ran make with otapackage, it made a zip file, that I'm assuming was flashable. I also downloaded a SlimRom zip to compare them. I noticed that in the SlimROM Zip, it has a system folder, not .img files. This allows for greater control of what is on the ROM I think, such as editing build.prop. How do I implement this into my flashable zip? So essentialy, I would like my flashable zip to have a /system folder, not system.img , patch, dat , etc. Thanks!
When I build slim, i use "make bacon" (or rather "mka bacon")
Have a look on their github at how their make files etc work.
I've rebuilt my system from scratch so I can't really figure it out for you. I need to get it back into a build environment first.
rootSU said:
When I build slim, i use "make bacon" (or rather "mka bacon")
Have a look on their github at how their make files etc work.
I've rebuilt my system from scratch so I can't really figure it out for you. I need to get it back into a build environment first.
Click to expand...
Click to collapse
Thanks for replying. I'll have a look.
Code:
including ./vendor/qcom/hammerhead/proprietary/Android.mk ...
PRODUCT_COPY_FILES device/generic/goldfish/data/etc/apns-conf.xml:system/etc/apns-conf.xml ignored.
PRODUCT_COPY_FILES frameworks/native/data/etc/handheld_core_hardware.xml:system/etc/permissions/handheld_core_hardware.xml ignored.
build/core/Makefile:33: warning: overriding commands for target `out/target/product/hammerhead/system/lib/hw/gps.msm8974.so'
build/core/base_rules.mk:550: warning: ignoring old commands for target `out/target/product/hammerhead/system/lib/hw/gps.msm8974.so'
build/core/Makefile:33: warning: overriding commands for target `out/target/product/hammerhead/system/lib/libgps.utils.so'
build/core/base_rules.mk:550: warning: ignoring old commands for target `out/target/product/hammerhead/system/lib/libgps.utils.so'
build/core/Makefile:33: warning: overriding commands for target `out/target/product/hammerhead/system/lib/libloc_core.so'
build/core/base_rules.mk:550: warning: ignoring old commands for target `out/target/product/hammerhead/system/lib/libloc_core.so'
build/core/Makefile:33: warning: overriding commands for target `out/target/product/hammerhead/system/lib/libloc_eng.so'
build/core/base_rules.mk:550: warning: ignoring old commands for target `out/target/product/hammerhead/system/lib/libloc_eng.so'
find: `bootable/recovery/res': No such file or directory
No private recovery resources for TARGET_DEVICE hammerhead
----- Making recovery filesystem ------
build/tools/generate-notice-files.py out/target/product/hammerhead/obj/NOTICE.txt out/target/product/hammerhead/obj/NOTICE.html "Notices for files contained in the filesystem images in this directory:" out/target/product/hammerhead/obj/NOTICE_FILES/src
make: *** No rule to make target `out/host/linux-x86/bin/unpackbootimg', needed by `out/target/product/hammerhead/aosp_hammerhead-ota-eng.austin.zip'. Stop.
make: *** Waiting for unfinished jobs....
Copying baseline ramdisk...
Modifying ramdisk contents...
cp: cannot stat ‘out/target/product/hammerhead/root/init.recovery.*.rc’: No such file or directory
make: [out/target/product/hammerhead/recovery/root.ts] Error 1 (ignored)
rm -f /init.*.rc
mkdir -p out/target/product/hammerhead/recovery/root/system/bin
cp: cannot stat ‘bootable/recovery/res’: No such file or directory
make: *** [out/target/product/hammerhead/recovery/root.ts] Error 1
Combining NOTICE files into HTML
Combining NOTICE files into text
#### make failed to build some targets (38 seconds) ####
This happened after using SlimRoms makefile instead of aosp. I still have AOSP's back uped though.
Yeah you won't be able to use it. You should be able to look at it and work out what it does though.
Thanks again for helping me, never had a bad experience on XDA. I am a big noob at this, but during a quick skimdown of the Slim Makefile, I found this:
Code:
bacon: otapackage
ifneq ($(TARGET_CUSTOM_RELEASETOOL),)
@echo -e ${CL_YLW}"Running custom releasetool..."${CL_RST}
$(hide) OTAPACKAGE=$(INTERNAL_OTA_PACKAGE_TARGET) APKCERTS=$(APKCERTS_FILE) $(TARGET_CUSTOM_RELEASETOOL)
else
@echo -e ${CL_YLW}"Running releasetool..."${CL_RST}
$(hide) OTAPACKAGE=$(INTERNAL_OTA_PACKAGE_TARGET) APKCERTS=$(APKCERTS_FILE) ./vendor/slim/tools/squisher
endif
Could this mean something? I'm not sure.

[Q] Error in building CM12.0 for Xperia-L

I tried to builld CM12 for Xperia-L. After issuing 'breakfast taoshan', the process apparently got stuck at 66%. I aborted by pressing Ctrl+C. When I am reissuing the command, it's throwing error. Can anybody please help me out?
Code:
[email protected]:~/CM12/build$ breakfast taoshan
ls: cannot access device/*/taoshan/cm.mk: No such file or directory
build/core/product_config.mk:234: *** Can not locate config makefile for product "cm_taoshan". Stop.
Device taoshan not found. Attempting to retrieve device repository from CyanogenMod Github (http://github.com/CyanogenMod).
Found repository: android_device_sony_taoshan
Default revision: cm-12.0
Checking branch info
Adding dependency: CyanogenMod/android_device_sony_taoshan -> device/sony/taoshan
Using default branch for android_device_sony_taoshan
Syncing repository to retrieve project.
Fetching project CyanogenMod/android_device_sony_taoshan
Fetching projects: 100% (1/1), done.
Repository synced!
Looking for dependencies
Adding dependencies to manifest
Adding dependency: CyanogenMod/android_device_sony_msm8960-common -> device/sony/msm8960-common
Using default branch for android_device_sony_msm8960-common
Adding dependency: CyanogenMod/android_kernel_sony_msm8930 -> kernel/sony/msm8930
Using default branch for android_kernel_sony_msm8930
Adding dependency: CyanogenMod/android_hardware_qcom_fm -> hardware/qcom/fm
Using default branch for android_hardware_qcom_fm
Syncing dependencies
Fetching project CyanogenMod/android_kernel_sony_msm8930
Fetching project CyanogenMod/android_hardware_qcom_fm
Fetching project CyanogenMod/android_device_sony_msm8960-common
Fetching projects: 66% (2/3) ^C
^C^C^C^C^C^C^C^C
error: Cannot fetch CyanogenMod/android_kernel_sony_msm8930
aborted by user
Looking for dependencies
Dependencies file not found, bailing out.
Looking for dependencies
Dependencies file not found, bailing out.
Looking for dependencies
Dependencies file not found, bailing out.
Done
build/core/product_config.mk:239: *** _nic.PRODUCTS.[[device/sony/taoshan/cm.mk]]: "device/sony/common/resources.mk" does not exist. Stop.
** Don't have a product spec for: 'cm_taoshan'
** Do you have the right repo manifest?
=======================================================
[email protected]:~/CM12/build$
[email protected]:~/CM12/build$ breakfast taoshan
build/core/product_config.mk:239: *** _nic.PRODUCTS.[[device/sony/taoshan/cm.mk]]: "device/sony/common/resources.mk" does not exist. Stop.
Device taoshan not found. Attempting to retrieve device repository from CyanogenMod Github (http://github.com/CyanogenMod).
Found repository: android_device_sony_taoshan
Default revision: cm-12.0
Checking branch info
CyanogenMod/android_device_sony_taoshan already exists
Syncing repository to retrieve project.
Fetching project CyanogenMod/android_device_sony_taoshan
Fetching projects: 100% (1/1), done.
Repository synced!
Looking for dependencies
Done
build/core/product_config.mk:239: *** _nic.PRODUCTS.[[device/sony/taoshan/cm.mk]]: "device/sony/common/resources.mk" does not exist. Stop.
** Don't have a product spec for: 'cm_taoshan'
** Do you have the right repo manifest?
clone this paste RAW Paste Data
Pastebin.com Tools & Applications
iPhone/iPad Windows Firefox Chrome WebOS Android Mac Opera Click.to UNIX WinPhone
create new paste | api | trends | syntax languages | faq | tools | privacy | cookies | contact | dmca | advertise on pastebin | go pro
Follow us: pastebin on facebook | pastebin on twitter | pastebin in the news
Dedicated Server Hosting by Steadfast
Pastebin v3.11 rendered in: 0.008 seconds
Holmes.Sherlock said:
I tried to builld CM12 for Xperia-L. After issuing 'breakfast taoshan', the process apparently got stuck at 66%. I aborted by pressing Ctrl+C. When I am reissuing the command, it's throwing error. Can anybody please help me out?
Click to expand...
Click to collapse
I'm getting the same error, seems like repo couldn't find the device kernel from cyanogenmod's github so I added a local_manifest extracted from android_device_sony_taoshan/blob/cm-12.0/cm.dependencies/ but to no avail. Still getting the error as below.
Code:
[email protected]:~/android/system$ breakfast taoshan
including vendor/cm/vendorsetup.sh
build/core/combo/select.mk:65: build/core/combo/HOST_linux-.mk: No such file or directory
/bin/bash: prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.8/bin/arm-linux-androideabi-gcc: cannot execute binary file: Exec format error
/bin/bash: prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.8/bin/arm-linux-androideabi-gcc: cannot execute binary file: Exec format error
build/core/clang/config.mk:76: build/core/clang/HOST_.mk: No such file or directory
make: *** No rule to make target `build/core/clang/HOST_.mk'. Stop.
Device taoshan not found. Attempting to retrieve device repository from CyanogenMod Github (http://github.com/CyanogenMod).
Found repository: android_device_sony_taoshan
Default revision: cm-12.0
Checking branch info
CyanogenMod/android_device_sony_taoshan already exists
Syncing repository to retrieve project.
fatal: error parsing manifest /home/manu/android/system/.repo/local_manifests/myoldphone.xml: XML or text declaration not at start of entity: line 3, column 0
Repository synced!
Looking for dependencies
Done
build/core/combo/select.mk:65: build/core/combo/HOST_linux-.mk: No such file or directory
/bin/bash: prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.8/bin/arm-linux-androideabi-gcc: cannot execute binary file: Exec format error
/bin/bash: prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.8/bin/arm-linux-androideabi-gcc: cannot execute binary file: Exec format error
build/core/clang/config.mk:76: build/core/clang/HOST_.mk: No such file or directory
make: *** No rule to make target `build/core/clang/HOST_.mk'. Stop.
** Don't have a product spec for: 'cm_taoshan'
** Do you have the right repo manifest?
[email protected]:~/android/system$
Any idea how to get past this issue?
manubhargav said:
I'm getting the same error, seems like repo couldn't find the device kernel from cyanogenmod's github so I added a local_manifest extracted from android_device_sony_taoshan/blob/cm-12.0/cm.dependencies/ but to no avail. Still getting the error as below.
Code:
[email protected]:~/android/system$ breakfast taoshan
including vendor/cm/vendorsetup.sh
build/core/combo/select.mk:65: build/core/combo/HOST_linux-.mk: No such file or directory
/bin/bash: prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.8/bin/arm-linux-androideabi-gcc: cannot execute binary file: Exec format error
/bin/bash: prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.8/bin/arm-linux-androideabi-gcc: cannot execute binary file: Exec format error
build/core/clang/config.mk:76: build/core/clang/HOST_.mk: No such file or directory
make: *** No rule to make target `build/core/clang/HOST_.mk'. Stop.
Device taoshan not found. Attempting to retrieve device repository from CyanogenMod Github (http://github.com/CyanogenMod).
Found repository: android_device_sony_taoshan
Default revision: cm-12.0
Checking branch info
CyanogenMod/android_device_sony_taoshan already exists
Syncing repository to retrieve project.
fatal: error parsing manifest /home/manu/android/system/.repo/local_manifests/myoldphone.xml: XML or text declaration not at start of entity: line 3, column 0
Repository synced!
Looking for dependencies
Done
build/core/combo/select.mk:65: build/core/combo/HOST_linux-.mk: No such file or directory
/bin/bash: prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.8/bin/arm-linux-androideabi-gcc: cannot execute binary file: Exec format error
/bin/bash: prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.8/bin/arm-linux-androideabi-gcc: cannot execute binary file: Exec format error
build/core/clang/config.mk:76: build/core/clang/HOST_.mk: No such file or directory
make: *** No rule to make target `build/core/clang/HOST_.mk'. Stop.
** Don't have a product spec for: 'cm_taoshan'
** Do you have the right repo manifest?
[email protected]:~/android/system$
Any idea how to get past this issue?
Click to expand...
Click to collapse
your manifest seems broken.... please make a clean sync (delete complete workingfolder and resync)
SdtBarbarossa said:
your manifest seems broken.... please make a clean sync (delete complete workingfolder and resync)
Click to expand...
Click to collapse
Thank you for your reply, I overlooked some requirements for building from source and I had a 32-bit Ubuntu system which gave me the error
Code:
/bin/bash: prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.8/bin/arm-linux-androideabi-gcc: cannot execute binary file: Exec format error
/bin/bash: prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.8/bin/arm-linux-androideabi-gcc: cannot execute binary file: Exec format error
Now switching to 64-bit Ubuntu.

[Q] Cross-compiling Percy .cc files for Android phone

Hi,
I am struggling cross-compiling the Percy++ (percy.sourceforge.net/readme.php) for android phones that mainly require some other libraries to be included i.e. libgcrypt, socket++ etc. I can create the toolchain using android NDK with the following options 'android-17', 'ARM-based', 'linux-x86_64', and 'arm-linux-androideabi-4.8'. After I try to compile one of the required libraries, it gives me the following error:
arm-linux-androideabi-gcc --sysroot=/path-to-built-toolchain/sysroot
-I../include
-I. -march=armv7-a -c MakeDescAux.c
-I. -march=armv7-a -march=armv7-a -o MakeDesc MakeDesc.c MakeDescAux.o
-lm
./MakeDesc
./MakeDesc: 1: ./MakeDesc: Syntax error: word unexpected (expecting ")")
make[1]: *** [setup1] Error 2
make[1]: Leaving directory 'src'
> make: *** [all] Error 2
The reason that during the compilation, it creates some .exe files that are run during the compilation time on the desktop machine and they simply do not run, since these files have been compiled for another target i.e. android phone.
I want to create the .exe file out of the Percy installation. My question is; do I need some different linker or different linker settings, different LDFLAGS/CFLAGS/CPPFLAGS etc.? Is there any other way to compile the Percy without cross-compiling the required libraries? although I have tried with statically including the required libraries using the 'LOCAL_STATIC_LIBRARIES' option, but that also does not work. I think that the required libraries should be compiled before they are statically included to your main installation software. Any help in this regard is highly appreciated. Thanks.

Apktool.jar common errors and solutions

As I'm no longer modding, this thread will not be updated anymore. Please refer to apktool issues https://github.com/iBotPeaches/Apktool/issues?q=is:issue++ and discussions https://github.com/iBotPeaches/Apktool/discussions for latest infomation
Since many got apktool.jar errors and don't know how to search or solve themself, I decided to explain and provide solutions here with links to Github. I have a friend who sometime can help me with this.
I will do my best to get much info. Feel free to post your thoughts
Know your error:
There’s a wide range of error messages you may encounter when decompiling and compiling your app. Depending on the kind of error you encounter, apktool.jar will always display the error message. Spotting error messages is easy
For example this log:
Code:
I: Using Apktool 2.4.1
I: Smaling smali folder into classes.dex...
I: Smaling smali_classes2 folder into classes2.dex...
I: Building resources...
W: D:\xxx\AndroidManifest.xml:15: Tag <uses-permission> attribute name has invalid character ' '.
brut.androlib.AndrolibException: brut.common.BrutException: could not exec (exit code = 1): [C:\Users\evildog1\AppData\Local\Temp\brut_util_Jar_2200487015856364895.tmp, p, --forced-package-id, 127, --min-sdk-version, 19, --target-sdk-version, 28, --version-code, 19227, --version-name, 4.1.1, --no-version-vectors, -F, C:\Users\evildog1\AppData\Local\Temp\APKTOOL3877124333918122178.tmp, -e, C:\Users\evildog1\AppData\Local\Temp\APKTOOL2736431752124554942.tmp, -0, arsc, -I, C:\Users\evildog1\AppData\Local\apktool\framework\1.apk, -S, D:\xxx\res, -M, D:\xxx\AndroidManifest.xml]
If you think could not exec is your error, it's actually not, the real error is actually a 'warning'
Code:
W: D:\APK Easy Tool\1-Decompiled APKs\xxx\AndroidManifest.xml:15: Tag <uses-permission> attribute name has invalid character ' '
The good thing it tells you which line it occured AndroidManifest.xml:15:. it's line 15 in AndroidManifest.xml
This was caused by a space in a permission tag. Removing it will fix the compiling error
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
It's not always a simple fix. This always depending
Check the APK file:
Sometimes APK is obfuscated in many ways.
Open the APK using 7-zip and WinRar and see if the first classes.dex is smaller than 500 KB or way bigger than 10 MB. If so, it a sign it's encrypted. Decompiling and compiling the big dex file will result in a smaller size and it will fail to decrypt due to missing encrypted block
Decompile and check if smali files and codes are obfuscated. This is an example of Netflix app that is obfuscated
Don't ask me how to break protected APK, I'm not a reverser so I can't help you with it.
Troubleshooting:
Sometime those troubleshooting tricks helps fixing errors. Please try one or more of the following below
- If you are using any 3rd party GUI tools, please try the actual apktool.jar with CMD first
- Use latest version of apktool.jar: https://ibotpeaches.github.io/Apktool/ and test
- If you are using latest version, try use older version of apktool.jar. Sometimes it can mitigate the issue
- Clear framework apktool empty-framework-dir --force and decompile the APK again.
- Decompile APK with --only-main-classes (Only disasemble dex classes in root (classes[0-9].dex). Prevents disasemble dex from assets folder) (apktool 2.4.1 and up only)
- Decompile APK with --no-res if you are only editing Java (smali) (--no-res will prevent the decompile of resources. This keeps the resources.arsc intact without any decode.)
- Decompile APK with --no-src if you are only editing the resources (xml) (--no-src will prevent the disassembly of the dex file(s). This keeps the apk dex file(s) and simply moves it during build.)
- Compile with --use-aapt2 (Use the aapt2 binary instead of appt)
Errors list:
Tip: Press CTRL + F and find the words
If there is no error you are looking for, search it on following Github issue pages
Apktool: https://github.com/iBotPeaches/Apktool/issues
Baksmali/smali: https://github.com/JesusFreke/smali/issues
Deompile errors:
* Exception in thread "main" java.lang.NullPointerException (XML related)
This is an issue with apktool 2.4.1. Downgrade to 2.4.0 or below (2.3.4 is better)
* Exception in thread "main" org.jf.dexlib2.dexbacked.DexBackedDexFile$NotADexFile: Not a valid dex magic value: (xx xx xx xx xx xx xx xx)
Rare issue, it usally caused if it tries to decompile encrypted dex from assets folder
Decompile APK with --only-main-classes
* Exception in thread "main" brut.androlib.AndrolibException: brut.directory.DirectoryException: Error copying file: res
This is a trick to prevent decompiling on Windows. Open the APK file using 7zip or Winrar and delete the unnamed file from res folder
Or use Mac/Linux until then
See: https://github.com/iBotPeaches/Apktool/issues/1460
* Invalid debug offset
These are legitimate warnings about inconsistencies in the dex file. The invalid debug offset is otherwise ignored and the classes are successfully disassembled.
Compile errors:
* brut.androlib.AndrolibException: brut.common.BrutException: could not exec (exit code = -1073741515)
This was an issue with Java 8 32-bit on Apktool 2.4.0. Install 64-bit of Java or switch to other version
See: https://github.com/iBotPeaches/Apktool/issues/2141
* Cant find 9patch chunk in file: (...). Renaming it to *.png.
APK is Obfuscated
See: https://forum.xda-developers.com/showpost.php?p=81088145&postcount=619
* Cannot run program "aapt": CreateProcess error=2, The system cannot find the file specified
Not a bug. This means the default application that is copied to tmp and executed, could not be done. Therefore it relied on the aapt binary being accessible in the $PATH variable.
* Class (...) has already been interned
Decompile APK with --only-main-classes (apktool 2.4.1 and up only)
* Exception in thread "main" brut.androlib.AndrolibException: brut.directory.PathNotExist: apktool.yml
apktool.yml does not exist, because APK did not decompiled completely. Decompile again
* Float types not allowed
Remove the decimal from version number maybe?
Reported issue: https://forum.xda-developers.com/showpost.php?p=82840671&postcount=699
* Invalid resource directory name
Currently unknown. Try clear framework if you don't work with system apps
* Invalid file name: must contain only (...). Ignoring...
See: https://github.com/iBotPeaches/Apktool/issues/2282
* JAXP 1.5 Support is required to validate XML
Update apktool.jar to the latest version
* No resource identifier found for attribute 'isSplitRequired' in package 'android'
Split APK is not supported yet. See https://github.com/iBotPeaches/Apktool/issues/2218
If you are following some tutorials how to merge split apks into one, then remove the attribute android:isSplitRequired="true" from AndroidManifest.xml, save and compile again
* No resource identifier found for attribute (...) in package (...)
There are many reasons why. Please refer to these issues for more infomation: https://github.com/iBotPeaches/Apktool/issues?q=No+resource+identifier+found+for+attribute+
Try clear framework if you don't work with system apps
Sometimes, removing the attribute will fix the error and the app would run fine without it. Always test if the app is working fine or not
* No resource found that matches the given name
There are many reasons why. This is not always easy to fix
See issues
https://github.com/iBotPeaches/Apktool/issues/2365
https://github.com/iBotPeaches/Apktool/issues/2362
https://github.com/iBotPeaches/Apktool/issues/2339
https://github.com/iBotPeaches/Apktool/issues/2422
Try clear framework if you don't work with system apps
If you are working with system apps, you may need framework installed.
* Tag (...) missing required attribute name.
Not an easy fix, but you can try --use-aapt2 or don't decode resources (-r, --no-res) if you don't need
https://github.com/iBotPeaches/Apktool/issues/1880
Tag <uses-permission> attribute name has invalid character ' '
This was caused by a space in an attribute name. Removing it will fix the compiling error
Example, change:
Code:
<uses-permission android:name="com.google.android.finsky.permission.CHECK_LICENSE "/>
to
Code:
<uses-permission android:name="com.google.android.finsky.permission.CHECK_LICENSE"/>
* Unsupported res type name for bags
See: https://github.com/iBotPeaches/Apktool/issues/1719
* Unsigned short value out of range: 65536
You have too many methods. The method index can't fit into an unsigned 16-bit value each dex
Simply move your codes to smali_classes(X) or create new one. For example if smali_classes2 is the latest, move code to smali_classes3
Full error log:
Code:
Exception in thread "main" org.jf.util.ExceptionWithContext: Exception occurred while writing code_item for method Lcom/mintegral/msdk/thrid/okhttp/internal/publicsuffix/PublicSuffixDatabase;->findMatchingRule([Ljava/lang/String;)[Ljava/lang/String;
at org.jf.dexlib2.writer.DexWriter.writeDebugAndCodeItems(DexWriter.java:1046)
at org.jf.dexlib2.writer.DexWriter.writeTo(DexWriter.java:345)
at org.jf.dexlib2.writer.DexWriter.writeTo(DexWriter.java:300)
at org.jf.smali.Smali.assemble(Smali.java:131)
at org.jf.smali.AssembleCommand.run(AssembleCommand.java:96)
at org.jf.smali.Main.main(Main.java:100)
Caused by: org.jf.util.ExceptionWithContext: Error while writing instruction at code offset 0x52
at org.jf.dexlib2.writer.DexWriter.writeCodeItem(DexWriter.java:1319)
at org.jf.dexlib2.writer.DexWriter.writeDebugAndCodeItems(DexWriter.java:1042)
... 5 more
Caused by: org.jf.util.ExceptionWithContext: Unsigned short value out of range: 65536
at org.jf.dexlib2.writer.DexDataWriter.writeUshort(DexDataWriter.java:116)
at org.jf.dexlib2.writer.InstructionWriter.write(InstructionWriter.java:356)
at org.jf.dexlib2.writer.DexWriter.writeCodeItem(DexWriter.java:1279)
... 6 more
* warning: found plain 'id' attribute; did you mean the new 'android:id' name?
See: https://github.com/iBotPeaches/Apktool/issues/2188
* warning: string (...) has no default translation.
Those are warnings, they are fine.
* WARNING: Could not write to (C:\Users\(username)\AppData\Local\apktool\framework), using C:\Users\(username)\AppData\Local\Temp\ instead...
Use the --frame-path [folder] parameter and describing the folder you want the framework resources to reside.
This warning can be ignored if you don't use framework
Others:
* 'java' is not recognized as an internal or external command
Install/Re-install latest version of Java 8 https://java.com/en/download/ or set the enviorment path manually
* APKTOOL_DUMMY
If you get APKTOOL_DUMMY that's generally because apktool can't decode some of the information in the original APK and creates a 'dummy' value instead. Because there's no things called APKTOOL_DUMMY in public.xml, the APK can't be recompiled. It's likely because you try to compile splitted APK with some missing infomation
* Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
Increase the java heap size like:
java -Xmx4096m -jar apktool.jar
java -Xmx4g -jar apktool.jar
If your system is Windows and is 64-bit, please uninstall 32-bit version and install 64-bit version (Windows Offline (64-bit)) https://java.com/en/download/manual.jsp
* Unsupported major.minor version (...)
Upgrade java to the latest version https://java.com/en/download/
ppst reserved 2
Updated. If you found more errors, please let me know
i have res relative problem, can anyone solve this
evildog1 said:
Updated. If you found more errors, please let me know
Click to expand...
Click to collapse
why I get this type of error
lokesh.Dewangan said:
why I get this type of error
Click to expand...
Click to collapse
Try
Code:
--use-aapt2
i get this error when decompile classes.dex :
Lcom/ano/gshell/AnoApplication;-><clinit>()V: Invalid debug offset
Lcom/ano/gshell/AnoApplication;-><init>()V: Invalid debug offset
Lcom/ano/gshell/AnoApplication;->dec(Ljava/lang/String;)Ljava/lang/String;: Invalid debug offset
Lcom/ano/gshell/AnoApplication;->dec(Ljava/lang/String;)Ljava/lang/String;: Invalid debug offset
Lcom/ano/gshell/AnoApplication;->attachBaseContext(Landroid/content/Context;)V: Invalid debug offset
Lcom/ano/gshell/AnoApplication;->attachBaseContext(Landroid/content/Context;)V: Invalid debug offset
and then after recompile the app and install the app works then exit in lobby
but when i use --no-src the app work without crash but i cant edit smali like that.
this is the app link try decompile and recompile dex file.
Download
I have a little problem described here, would you look at it?
Thx
Hello, when I try to compile I get an error, could you please help me.
Thank you
Code:
Checking for update...
Compiling APK file... (Press ESC to cancel)
Executing command: java.exe -jar "C:\Users\José Andrés\Desktop\PÒRTABLE EASY\Apktool\apktool_2.5.0.jar" b -d -f --use-aapt2 -o "C:\Users\José Andrés\Desktop\PÒRTABLE EASY\2-Recompiled APKs\Teba_19.3.apk" "C:\Users\José Andrés\Desktop\PÒRTABLE EASY\1-Decompiled APKs\Teba_19.3"
I: Using Apktool 2.5.0
I: Smaling smali folder into classes.dex...
I: Building resources...
I: Using aapt2 - setting 'debuggable' attribute to 'true' in AndroidManifest.xml
W: C:\Users\José Andrés\Desktop\PÒRTABLE EASY\1-Decompiled APKs\Teba_19.3\res: error: failed to open directory: El sistema no puede encontrar el archivo especificado. (2).
brut.androlib.AndrolibException: brut.common.BrutException: could not exec (exit code = 1): [C:\Users\JOSAND~1\AppData\Local\Temp\brut_util_Jar_131902690237150689966905402769991619447.tmp, compile, --dir, C:\Users\José Andrés\Desktop\PÒRTABLE EASY\1-Decompiled APKs\Teba_19.3\res, --legacy, -o, C:\Users\José Andrés\Desktop\PÒRTABLE EASY\1-Decompiled APKs\Teba_19.3\build\resources.zip]
Compile failed. Please read the log
When you write:
"Sometimes, removing the attribute will fix the error and the app would run fine without it. Always test if the app is working fine or not"
where i can do it, removing the attribute ?
My error is:
W: C:\Users\Marco\Documents\APK Easy Tool\1-Decompiled APKs\XRecorder_v2.1.1.1__Arm7_Pro__UserUpload.Net\res\layout\a0.xml:2: error: No resource identifier found for attribute 'paddingBottomNoButtons' in package 'videoeditor.videorecorder.screenrecorder'
etc...
Thank
Hispa
Sorry for very late reply guys
tahooo said:
i get this error when decompile classes.dex :
Lcom/ano/gshell/AnoApplication;-><clinit>()V: Invalid debug offset
Lcom/ano/gshell/AnoApplication;-><init>()V: Invalid debug offset
Lcom/ano/gshell/AnoApplication;->dec(Ljava/lang/String;)Ljava/lang/String;: Invalid debug offset
Lcom/ano/gshell/AnoApplication;->dec(Ljava/lang/String;)Ljava/lang/String;: Invalid debug offset
Lcom/ano/gshell/AnoApplication;->attachBaseContext(Landroid/content/Context;)V: Invalid debug offset
Lcom/ano/gshell/AnoApplication;->attachBaseContext(Landroid/content/Context;)V: Invalid debug offset
and then after recompile the app and install the app works then exit in lobby
but when i use --no-src the app work without crash but i cant edit smali like that.
this is the app link try decompile and recompile dex file.
Download
Click to expand...
Click to collapse
Sounds like the app has a protection against tampering. I cannot help with that
gidano said:
I have a little problem described here, would you look at it?
Thx
Click to expand...
Click to collapse
I believe it has been fixed https://github.com/iBotPeaches/Apktool/pull/2650
Try using latest commit of apktool.jar (Requires Github account to download) https://github.com/iBotPeaches/Apktool/actions/runs/1712896706
Jaloga said:
Hello, when I try to compile I get an error, could you please help me.
Thank you
Code:
Checking for update...
Compiling APK file... (Press ESC to cancel)
Executing command: java.exe -jar "C:\Users\José Andrés\Desktop\PÒRTABLE EASY\Apktool\apktool_2.5.0.jar" b -d -f --use-aapt2 -o "C:\Users\José Andrés\Desktop\PÒRTABLE EASY\2-Recompiled APKs\Teba_19.3.apk" "C:\Users\José Andrés\Desktop\PÒRTABLE EASY\1-Decompiled APKs\Teba_19.3"
I: Using Apktool 2.5.0
I: Smaling smali folder into classes.dex...
I: Building resources...
I: Using aapt2 - setting 'debuggable' attribute to 'true' in AndroidManifest.xml
W: C:\Users\José Andrés\Desktop\PÒRTABLE EASY\1-Decompiled APKs\Teba_19.3\res: error: failed to open directory: El sistema no puede encontrar el archivo especificado. (2).
brut.androlib.AndrolibException: brut.common.BrutException: could not exec (exit code = 1): [C:\Users\JOSAND~1\AppData\Local\Temp\brut_util_Jar_131902690237150689966905402769991619447.tmp, compile, --dir, C:\Users\José Andrés\Desktop\PÒRTABLE EASY\1-Decompiled APKs\Teba_19.3\res, --legacy, -o, C:\Users\José Andrés\Desktop\PÒRTABLE EASY\1-Decompiled APKs\Teba_19.3\build\resources.zip]
Compile failed. Please read the log
Click to expand...
Click to collapse
Try enable aapt2
hispanico957 said:
When you write:
"Sometimes, removing the attribute will fix the error and the app would run fine without it. Always test if the app is working fine or not"
where i can do it, removing the attribute ?
My error is:
W: C:\Users\Marco\Documents\APK Easy Tool\1-Decompiled APKs\XRecorder_v2.1.1.1__Arm7_Pro__UserUpload.Net\res\layout\a0.xml:2: error: No resource identifier found for attribute 'paddingBottomNoButtons' in package 'videoeditor.videorecorder.screenrecorder'
etc...
Thank
Hispa
Click to expand...
Click to collapse
By editing the xml if you know how. I won't cover it here
Otherwise report issue to https://github.com/iBotPeaches/Apktool/issues
How to prevent apktool from merging res folders?
Example:
color
color-v11
get merged into
color
gcrutchr said:
How to prevent apktool from merging res folders?
Example:
color
color-v11
get merged into
color
Click to expand...
Click to collapse
Sorry, didn't saw this post. I think this is a feature. You should contact iBotPeaches
evildog1 said:
Sorry, didn't saw this post. I think this is a feature. You should contact iBotPeaches
Click to expand...
Click to collapse
It can't be a feature. SystemUI.apk won't work without res/**.xml-v??
When I change the Minimum SDK Version using ApkTool. The apk it's Crashing.
Just a heads-up.
If you like modifying Android core files (like framework.jar) on Android 10 or greater (API 29+) using apktool 2.6.1 it's not going to work so nicely even if it doesn't bomb on an error.
Code:
Error occurred while disassembling class Landroid.util.proto.HapiProto; - skipping class
java.lang.ArrayIndexOutOfBoundsException: 6
at org.jf.dexlib2.HiddenApiRestriction.getAllFlags(HiddenApiRestriction.java:108)
It will make a mish-mash of the new hidden API modifiers (whitelist, greylist, greylist-max-o...)
@iBotPeaches has this already in sight and is trying to resolve it.
https://github.com/iBotPeaches/Apktool/issues/2918
On a bit of a tangent, in the interim I tried the "nuclear option".
I was working on a framework.jar and couldn't "round-trip" it, so I edited out all the hidden API modifiers.
It builds fine, but the logcat was a train wreck.
Anybody know why?
Edit: I gave up on nuking all hidden API modifiers.
apktool d works fine so I can disassemble at least, but I don't think there are any options to show the file addresses of the instructions.
So I wrote a work-in-progress to disassemble with file addresses:
Code:
C:\>dexdump classes.dex /cKeyboardEntryMap /mgenerateMap
KeyboardEntryMap
002eebec generateMap
002eebfc const-string/jumbo
002eec02 invoke-static
002eec08 move-result-object
...
002eec62 invoke-interface
002eec68 goto
002eec6a return-void
Then I just need some judicious hex editing to nops or return-void.
Exception in thread "main" java.lang.ClassCastException: class brut.androlib.res.data.value.ResStringValue cannot be cast to class brut.androlib.res.data.value.ResIntValue (brut.
androlib.res.data.value.ResStringValue and brut.androlib.res.data.value.ResIntValue are in unnamed module of loader 'app')
Anyone know anything about this?

Categories

Resources