iBotPeaches / Apktool

A tool for reverse engineering Android apk files
https://apktool.org/
Apache License 2.0
20.28k stars 3.59k forks source link

LGSettings.apk of LG G4 #1001

Closed HomerSp closed 8 years ago

HomerSp commented 9 years ago

Having problems decompiling LGSettings.apk of the LG G4. Here's the apktool output: https://drive.google.com/file/d/0B4FOzj4b2EYib2hHblZSWnBoMEU/view?usp=sharing

framework-res.apk: https://drive.google.com/file/d/0B4FOzj4b2EYiVS1QMk0wYmQ1NlU/view?usp=sharing
lge-res.apk: https://drive.google.com/file/d/0B4FOzj4b2EYieWxQWTVmbllTWGc/view?usp=sharing LGSettings.apk: https://drive.google.com/file/d/0B4FOzj4b2EYibWZ2Qld5RmNOOUE/view?usp=sharing

laststandingdroid commented 9 years ago

yupp get same with G4 framework files,

Strange is that G3 framework files decompiles it successfully pretty strange

szecs commented 9 years ago

Look here. https://github.com/iBotPeaches/Apktool/issues/987 Should be solved now.

HomerSp commented 9 years ago

I've tried it with both the 2.0.1 release and 2.0.2 from trunk, and oddly enough they both fail to decompile the LGSettings.apk. The output seems to be the same as #987, but it doesn't seem to be completely fixed yet.

szecs commented 9 years ago

Can confirm. I could decomplie Lgsettings but recompiling failed.

minhkhoinguyen commented 9 years ago

i use framework-res extracted frome G3 Rom and decomplie success LGSettings.apk' G4 but when i recomplie got error. Of cources! Maybe apktool 2.0.1 don't support framework-res 5.1 arm64

iBotPeaches commented 8 years ago

Sorry for letting this sit here for so long. I got caught up in other things and just forgot about this. I took a fresh look at this starting from the original report and working from there.

I decoded the application with a ton of warnings of

S: Could not decode file, replacing by FALSE value: drawable-ldpi-v4/img_datausage_battery_charging_ani_01.png
S: Could not decode file, replacing by FALSE value: drawable-mdpi-v4/btn_saver_on.9.png

Every file I traced wasn't in the original apk, so apktool is doing things right. If the originating referenced file doesn't exist in APK, it should replace the reference in the application with a FALSE boolean value. It of course isn't right, but the for the decode to succeed it needs a filler value.

So I tried a rebuild and was left with 1 error of.

I: Building resources...
W: /home/ibotpeaches/Downloads/Apktool/Bug1001/LGSettings/res/values/styles.xml:92: error: Error: No resource found that matches the given name: attr '@android:attr/APKTOOL_DUMMY_427'.

So I was off to styles.xml

    <style name="setup_wizard_theme" parent="@android:style/Theme.Holo.NoActionBar">
        <item name="android:windowSoftInputMode">adjustPan</item>
        <item name="@android:attr/APKTOOL_DUMMY_427">@style/PreferencePanelDialog</item>
    </style>

That looks weird. I wonder what the dummy value was suppose to be.

➜  Bug1001 grep -r -i 'APKTOOL_DUMMY_427'
LGSettings/res/values/styles.xml:        <item name="@android:attr/APKTOOL_DUMMY_427">@style/PreferencePanelDialog</item>

Yeah no results, so guess this was a referenced value that didn't exist, so once again apktool did the right thing replacing it with a dummy value so it could decode. So I just removed this line, as I don't care about one value for a style.

W: warning: string 'vibrate_in_silent_title' has no default translation.
W: warning: string 'wifi_ip_settings_menu_cancel' has no default translation.
W: warning: string 'wifi_ip_settings_menu_save' has no default translation.
W: warning: string 'wifi_settings_summary' has no default translation.
I: Copying libs... (/lib)
I: Building apk file...
I: Copying unknown files/dir...
➜  Bug1001

A couple of warnings for non-default translated strings, but otherwise no errors. This apk isn't as clean as others. Its full of errors which apktool tries its best to recover from, but after my investigation there is nothing more I can do to help, so closing this.

Sorry again for the delay.