Related
Complete guide on how to Decompile/Recompile Apks with APKTOOL
This Tutorial is for Windows Only
Apktool and all .bat files outlined in this tutorial have been uploaded here for your convenience
Requirements
- 7zip / Winrar (or similar)
- Apktool - (Package link above)
Notes
- I use .bat file to make the whole process alot quicker ...
- Copying Apktool files (aapt.exe, apktool.bat, apktool.jar, baksmali.jar, zipalign.exe) into C:/windows will allow you to use the .bat files anywhere on your computer without the need for apktool in the same directory
Step 1 - First you need to install the framework files so the apktool can use them to decompile other apks in the rom that depend on the framework
- Make a text document and rename it "Install Framework.bat"
- Edit it with a txt editor and paste in this code
Code:
CMD /K apktool if framework-res.apk
- with your framework-res.apk in the folder run the Install Framework.bat file and it should output
Code:
Framework installed to: C:\Users\USER\apktool\framework\1.apk
Step 2 - Decompiling (we will be decompiling framework-res.apk in this tutorial)
- First make a copy of the apk you wish to decompile and name it backup.apk (this will be used later)
- Make a text document and rename it "Decompile.bat"
- Edit it with a txt editor and paste in this code (replace the "framework-res.apk" with the name of the apk you wish to decompile)
Code:
CMD /K apktool d framework-res.apk
- with your apk in the same folder run the Decompile.bat file and it create a folder that you can edit as you see fit
Step 3 - Recompiling (we will be Recompiling framework-res.apk in this tutorial)
- Make a text document and rename it "Compile.bat"
- Edit it with a txt editor and paste in this code (replace the "framework-res.apk" with the name of the apk you wish to recompile)
Code:
del almostdone.apk
CMD /K apktool b framework-res almostdone.apk
- Run the Compile.bat file and it create an apk called almostdone.apk (if you get errors you most likely made a change which broke the apk)
- Open both almostdone.apk and backup with 7zip or Winrar
- Drag all the contents of almostdone.apk except for AndroidManifest.xml into backup.apk and replace existing files
- Now make a text document and rename it "Zipalign.bat"
- Edit it with a txt editor and paste in this code (replace the "framework-res.apk" with the name of the apk you wish to recompile)
Code:
del framework-res.apk
zipalign.exe -v 4 backup.apk framework-res.apk
- Run the Zipalign.bat file and it create the finished apk
Nice one :good:, but i think very few takers in our forum. I was also thinking about posting on ROM Porting, but there are many guides already out there .
yeah ... seems so.... iv'e tryed porting myself ... never got it booting ...
APKTool.zip (with Signed Files & Tools) has these files inside...
_____________________________________________________
! SGS3 (TMobile) Signed Files - framework-res (4.1.1)
! SGS3 (TMobile) Signed Files - SystemUI (4.1.1)
! Instructions + Info.txt
! Tool - 7-Zip v9.20 installer.exe
! Tool - Notepad++ 6.2.3 installer.exe
aapt.exe (from Android SDK Files {adt-bundle-windows-x86\sdk\platform-tools}) Android SDK
apktool.jar (APKTool v1.5.1 - Newest Release 12-28-2012) APKTool
*** Works on Windows x86 32 bit (NOT Tested on 64 bit)
Must have installed on Windows
__________________________
Java {I use Java Runtime Environment 1.7.0.10} Java 32bit
Notepad++ {Editing tool}
7-Zip (or WinRAR)
! Instructions + Info on Post #2
Download : APKTool.zip
Other Similar Helpful Links (that relate)...
Link #1- [How To] Use and install APKtool (v6ser)
Link #2- [How To} Setup use APKtool (RMarkwald)
Update: I check on this thread only once a week to answer questions. So be patient.
! Instructions + Info
NOTES
__________________________________________________________________
*** to "ADD Back SIGNED Files", open up newly created .apk with 7-Zip (or WinRAR) and add in (META-INF folder + AndroidManifest.xml)
.apk NEED'S to be SIGNED, .jar DOESN'T
Doesn't matter which set is used, as long as they are a MATCHING SET. (META-INF folder + AndroidManifest.xml)
APKTOOL LINES Explained
__________________________________________________________________
LINE apktool if framework-res.apk (Creates this file... C:\Documents and Settings\{your username}\apktool\framework\1.apk)
-that created "1.apk" file has "resources.arsc" inside.
-It's only Needed to run 1st time to register file with APKTool
LINE apktool d {file name} (De-Compiles to {file named folder -".apk" or +".out"})
LINE apktool b {folder name} (Compiles to {folder name}\dist)
Instructions : How to Use Apktool
__________________________________________________________________
1. Extract the "APKTool.zip" file to C:\ so that it looks this C:\APKTool
2. Extract "framework-res.apk" from your ROM's "system\framework" folder & put file into C:\APKTool
3. Copy any file(s) to edit to your C:\APKTool folder {xxx.apk, xxx.jar}
4. In Windows, get to your CMD box (in WinXP - Start Menu - Run - CMD)
CD:\apktool
apktool if framework-res.apk
{Example #1 - Editing framework-res.apk}
________________________________________
apktool d framework-res.apk
...{edit file(s) with Notepad++}
apktool b framework-res
...{add back SIGNED Files}
{Example #2 - Editing SystemUI.apk}
___________________________________
apktool d systemui.apk
...{edit file(s) with Notepad++}
apktool b systemui
...{add back SIGNED Files}
{Example #3 - Editing android.policy.jar}
_________________________________________
apktool d android.policy.jar
...{edit file(s) with Notepad++}
apktool b android.policy.jar.out
{Example #4 - Editing services.jar}
___________________________________
apktool d services.jar
...{edit file(s) with Notepad++}
apktool b services.jar.out
5. Finished !
I created this thread, as to not clutter up a ROM that I posted. Now I can help others who use it here!
ktmdave7 said:
APKTool.zip (with Signed Files & Tools) has these files inside...
_____________________________________________________
! SGS3 (TMobile) Signed Files - framework-res (4.1.1)
! SGS3 (TMobile) Signed Files - SystemUI (4.1.1)
! Instructions + Info.txt
! Tool - 7-Zip v9.20 installer.exe
! Tool - Notepad++ 6.2.3 installer.exe
aapt.exe (from Android SDK Files {adt-bundle-windows-x86\sdk\platform-tools}) Android SDK
apktool.jar (APKTool v1.5.1 - Newest Release 12-28-2012) APKTool
*** Works on Windows x86 32 bit (NOT Tested on 64 bit)
Must have installed on Windows
__________________________
Java {I use Java Runtime Environment 1.7.0.10} Java 32bit
Notepad++ {Editing tool}
7-Zip (or WinRAR)
! Instructions + Info on Post #2
Download : APKTool.zip
Other Similar Helpful Links (that relate)...
Link #1- [How To] Use and install APKtool (v6ser)
Link #2- [How To} Setup use APKtool (RMarkwald)
Click to expand...
Click to collapse
Thanks for this. Maybe people will stop demanding so much and start to experiment and learn themselves....
Thanks, I've been having trouble using apkmanager and needed to get a good setup with apktools for editing framework. I'll give this a go and a very special thanks for the instructions!
Noellenchris
Ok, for me I have to type apktool.jar d framework-res.apk and then I edited \values\arrays.xml and when I type apktool.jar b framework-res it created a build/apk folder but it is empty... Any ideas? I was trying jovy's tethering mod. I also ran aptool.jar if framework-res.apk first and verified the user folder was created with a file called 1.apk. Probably a noob question and I apologize in advance.
I have also previously reinstalled JRE for both normal and x64 versions plus ensured they are added to my path environment. I also added a JAVA_HOME entry and added the path in the values to my JRE path. Hmmm....that's about it I guess for now.
Thanks
dude thanks so much.
i needed someone to hold my hand through this. ill try it once im off work.
when I use this tool on (Windows XP 32bit), I get "Build" folder, when it tries to Compile (and it can be empty, if it tried to compile and got interrupted, or possibly a error)
I usually delete these 2 folders (build + dist)... (if they are there) right before a Re-compile.
\build = project folder of Re-compiling.
\dist = project Newly created .apk (or .jar) file goes.
Working with APKTool is easy... but you learn the most by using a lot and testing it yourself. I try many different methods and recheck the file if did 1 way, then I try another way and see if any thing is changed by another method (lots of comparing and confidence builds this way) Something that is tuff to explain in Text and in Instructions, but eventually, you have confidence in file comparisons and makes sense then.
*** Sometimes I see different Text words, that seam like could be error (but to me Error text, is when the CMD box filles with much extra TEXT and you can tell it messed up... NOT just 1 text line of code)
noellenchris said:
Ok, for me I have to type apktool.jar d framework-res.apk and then I edited \values\arrays.xml and when I type apktool.jar b framework-res it created a build/apk folder but it is empty... Any ideas? I was trying jovy's tethering mod. I also ran aptool.jar if framework-res.apk first and verified the user folder was created with a file called 1.apk. Probably a noob question and I apologize in advance.
I have also previously reinstalled JRE for both normal and x64 versions plus ensured they are added to my path environment. I also added a JAVA_HOME entry and added the path in the values to my JRE path. Hmmm....that's about it I guess for now.
Thanks
Click to expand...
Click to collapse
Found my issue, my edit on the arrays.xml was bad, I kept forgetting to add a /> at the end of the edit. duh. Glad it didn't compile and I ended up with some crazy errors on my phone... Lesson learned.
Noellenchris
I cant delete files from folder-apktool after decompile, compile, give permission but dont cant delete.I on win 8.How delete
very useful. Thanks!
Hello,
In this tutorial I´ll show you how to change the height of your NavBar.
This Tutorial works for any Rom!
Requirements
Text-Editor, e.g. Notepad++
WinRar/WinZip/Bandzip
Apktool (Download)
installed Java (Download)
JDK (Download)
root on your Nexus 4
a FileManager like ES File Explorer or Root Explorer
your framework-res.apk
some Cmd experience (just a little)
.. and some time/nerves
.. let´s go
Before getting started, make a Nandroid Backup (if you get Bootoop etc)!
The decompliling:
First you need to create a new folder like "C:\apktool". Download Apktool and extract the files to C:\apktool
copy your framework-res.apk to C:\apktool
open Cmd
navigate to your apktool (with "cd C:\apktool")
type in: java -jar apktool.jar if framework-res.apk [enter] (...installation of your framework)
type in: java -jar apktool.jar d framework-res.apk [enter]
finished!
Now you should have a new folder named framework-res. That´s your decompiled framework-res.apk.
The customizing of your NavBar height:
Navigate to /res/values
open dimens.xml in your Text-Editor
search the 3 lines which include navigation_bar_height, navigation_bar_height_landscape, und navigation_bar_width
type in your desired dpi number (for default it´s 48dpi)
CAUTION: At width, you should calculate the numeral proportion of the height to the width.
If you got that, save!
The (Re-)compiling:
Cmd (if you have not left it open, you must navigate again to C:\apktool
type in: java -jar apktool.jar b framework-res [enter]
The newly compiled framework-res.apk is located in C:\apktool\framework-res\dist
CAUTION: Copy the META-INF folder and the AndroidManifest.xml from your old framework-res.apk to your newly compiled one! Otherwise you´ll get Bootloop.
Now copy your framework-res.apk with a file manager to /system/framework. After that reboot immediately!
Finished! Have fun with your smaller/higher NavBar.
If there are some question, ask in this thread, I´ll help you as good as possible. Please don´t write me PM´s with support requests.
The "small-print":
Neither XDA-Developers.com, nor me are responible for any damages on your device!
I'm pretty sure this is the same for changing your Navigation Bar white or any color you want?
But instead I think its the navbar.xml that you need to edit correct?
Sent from my Nexus 4 using xda app-developers app
Right. But maybe it's in SysUI.apk, I don't know right now.
~ via Nexus
Flextrick said:
Hello,
In this tutorial I´ll show you how to change the height of your NavBar.
This Tutorial works for any Rom!
Requirements
Text-Editor, e.g. Notepad++
WinRar/WinZip/Bandzip
Apktool (Download)
installed Java (Download)
JDK (Download)
root on your Nexus 4
a FileManager like ES File Explorer or Root Explorer
your framework-res.apk
some Cmd experience (just a little)
.. and some time/nerves
.. let´s go
Before getting started, make a Nandroid Backup (if you get Bootoop etc)!
The decompliling:
First you need to create a new folder like "C:\apktool". Download Apktool and extract the files to C:\apktool
copy your framework-res.apk to C:\apktool
open Cmd
navigate to your apktool (with "cd C:\apktool")
type in: java -jar apktool.jar if framework-res.apk [enter] (...installation of your framework)
type in: java -jar apktool.jar d framework-res.apk [enter]
finished!
Now you should have a new folder named framework-res. That´s your decompiled framework-res.apk.
The customizing of your NavBar height:
Navigate to /res/values
open dimens.xml in your Text-Editor
search the 3 lines which include navigation_bar_height, navigation_bar_height_landscape, und navigation_bar_width
type in your desired dpi number (for default it´s 48dpi)
CAUTION: At width, you should calculate the numeral proportion of the height to the width.
If you got that, save!
The (Re-)compiling:
Cmd (if you have not left it open, you must navigate again to C:\apktool
type in: java -jar apktool.jar b framework-res [enter]
The newly compiled framework-res.apk is located in C:\apktool\framework-res\dist
CAUTION: Copy the META-INF folder and the AndroidManifest.xml from your old framework-res.apk to your newly compiled one! Otherwise you´ll get Bootloop.
Now copy your framework-res.apk with a file manager to /system/framework. After that reboot immediately!
Finished! Have fun with your smaller/higher NavBar.
If there are some question, ask in this thread, I´ll help you as good as possible. Please don´t write me PM´s with support requests.
The "small-print":
Neither XDA-Developers.com, nor me are responible for any damages on your device!
Click to expand...
Click to collapse
Thanks dude!
"CAUTION: At width, you should calculate the numeral proportion of the height to the width."
What's the scale? I set 36dpi both on height and landsape_hight, what's the width should I do? And I want the background of navigation to more smaller...
First of all, please delete fullquote Second: Proportion is like 48:42=36:x (x is width, just calculate). And third: Which background do you mean?
~ via Nexus
Hello,
if somebody is interested: I built a graphical Apktool for easier modding. Check it out: http://forum.xda-developers.com/showthread.php?t=2326604
~ via Nexus
I am attempting this but its not working.
I have apktool, java, and JDK installed.
When I run the commands I get this...
Code:
c:\apktool>java -jar apktool.jar if framework-res.apk
Exception in thread "main" brut.androlib.AndrolibException: Multiple resources:
spec=0x01080294 drawable/ic_ab_back_holo_dark, config=-xhdpi
at brut.androlib.res.data.ResConfig.addResource(ResConfig.java:65)
at brut.androlib.res.data.ResConfig.addResource(ResConfig.java:58)
at brut.androlib.res.decoder.ARSCDecoder.readEntry(ARSCDecoder.java:196)
at brut.androlib.res.decoder.ARSCDecoder.readConfig(ARSCDecoder.java:165
)
at brut.androlib.res.decoder.ARSCDecoder.readType(ARSCDecoder.java:130)
at brut.androlib.res.decoder.ARSCDecoder.readPackage(ARSCDecoder.java:10
5)
at brut.androlib.res.decoder.ARSCDecoder.readTable(ARSCDecoder.java:82)
at brut.androlib.res.decoder.ARSCDecoder.decode(ARSCDecoder.java:48)
at brut.androlib.res.decoder.ARSCDecoder.decode(ARSCDecoder.java:39)
at brut.androlib.res.AndrolibResources.installFramework(AndrolibResource
s.java:384)
at brut.androlib.Androlib.installFramework(Androlib.java:365)
at brut.apktool.Main.cmdInstallFramework(Main.java:193)
at brut.apktool.Main.main(Main.java:69)
c:\apktool>java -jar apktool.jar d framework-res.apk
I: Loading resource table...
Exception in thread "main" brut.androlib.AndrolibException: Multiple resources:
spec=0x01080294 drawable/ic_ab_back_holo_dark, config=-xhdpi
at brut.androlib.res.data.ResConfig.addResource(ResConfig.java:65)
at brut.androlib.res.data.ResConfig.addResource(ResConfig.java:58)
at brut.androlib.res.decoder.ARSCDecoder.readEntry(ARSCDecoder.java:196)
at brut.androlib.res.decoder.ARSCDecoder.readConfig(ARSCDecoder.java:165
)
at brut.androlib.res.decoder.ARSCDecoder.readType(ARSCDecoder.java:130)
at brut.androlib.res.decoder.ARSCDecoder.readPackage(ARSCDecoder.java:10
5)
at brut.androlib.res.decoder.ARSCDecoder.readTable(ARSCDecoder.java:82)
at brut.androlib.res.decoder.ARSCDecoder.decode(ARSCDecoder.java:48)
at brut.androlib.res.AndrolibResources.getResPackagesFromApk(AndrolibRes
ources.java:315)
at brut.androlib.res.AndrolibResources.loadMainPkg(AndrolibResources.jav
a:50)
at brut.androlib.res.AndrolibResources.getResTable(AndrolibResources.jav
a:43)
at brut.androlib.Androlib.getResTable(Androlib.java:44)
at brut.androlib.ApkDecoder.getResTable(ApkDecoder.java:148)
at brut.androlib.ApkDecoder.decode(ApkDecoder.java:98)
at brut.apktool.Main.cmdDecode(Main.java:128)
at brut.apktool.Main.main(Main.java:65)
c:\apktool>
Any help would be great.
Or if someone wants to set my dpi to 24 that would be great as well. 24/24/24
framework-res.apk
Hello, I see. Maybe you should try this one here: http://forum.xda-developers.com/showthread.php?t=1755243
I created an AndroidApktool, which makes it easier to mod your files: http://forum.xda-developers.com/showthread.php?t=2326604
It helps you in this Tutorial much, too.
How do you move the old META-INF folder and AndroidManifest.xml into the new apk after it's already compiled?
With WinRar or 7zip etc.
I followed every step and I end up with same as paperecho, empty framework-res folder.
Do you get the same error as he?
Is it possible to set the alignment of the softkeys to the left side (especially for the Nexus 7/10)?
Thanks in advance
Sent from my Nexus 4 using xda premium
It's possible for sure, but I don't know how. Ive got no experience with tablets, sorry.
I'm also finished with empty folder framework-res..
Maybe you guys should download the newest apktool version and replace it with the one in my folder. I think this should solve your problem
Does anyone know what values they use to make the softkeys stay vertical when the phone is in landscape mode? I'm trying to do that with my tablets. Thanks
Works Great Nexus 4 and Nexus 10 Kitkat
In Android L, it didn't work in type in "java -jar apktool.jar if framework-res.apk" & "java -jar apktool.jar d framework-res.apk"...
Attached baksmali/smali is v2.0.3 with applied patch to support ART deodexing.
source of patch: https://code.google.com/p/smali/issues/detail?id=225
DISCLAMER: I don't provide any support for this application. Neither provide any guides. It's strictly for devs only.
Great job.
Thank you my friend
Thanks , My friend :good:
Does anyone know how to dump the boot.oat file so it can be deodexed as well?
tdunham said:
Does anyone know how to dump the boot.oat file so it can be deodexed as well?
Click to expand...
Click to collapse
As any other odex file:
Code:
java -jar oat2dex.jar boot.oat filename.dex
It takes about 2-3 min but works without error
_alexndr said:
As any other odex file:
Code:
java -jar oat2dex.jar boot.oat filename.dex
It takes about 2-3 min but works without error
Click to expand...
Click to collapse
Yes, that part works for me too. I use this commandline to deodex that .dex file:
Code:
Java -jar baksmali.jar -a 21 -x temp.dex -o deodex
But when I try to recompile, I only get a single, very small classes.dex and I was expecting multiple dex files for reintegration into their framework jar files.
What am I missing here for what needs to be done with the outputted dex file?
tdunham said:
Yes, that part works for me too. I use this commandline to deodex that .dex file:
Code:
Java -jar baksmali.jar -a 21 -x temp.dex -o deodex
But when I try to recompile, I only get a single, very small classes.dex and I was expecting multiple dex files for reintegration into their framework jar files.
What am I missing here for what needs to be done with the outputted dex file?
Click to expand...
Click to collapse
From what I understand, boot.oat should have the classes for at least 15 different jar files in it. Even if they're amalgamated together, that should still be a reasonably big size..
Ticklefish said:
From what I understand, boot.oat should have the classes for at least 15 different jar files in it. Even if they're amalgamated together, that should still be a reasonably big size..
Click to expand...
Click to collapse
Right, I get a single 75mb dex file from boot.oat. When dex is decompiled I get this directory structure:
android
com
dalvik
java
javax
libcore
org
sun
Now, how can we recompile back to multi dex so it is usable?
tdunham said:
[...] I was expecting multiple dex files for reintegration into their framework jar files.
What am I missing here for what needs to be done with the outputted dex file?
Click to expand...
Click to collapse
Indeed, I didn't think of that well, I just didn't need it yet
BTW
Look at this:
http://forum.xda-developers.com/galaxy-s5/general/tool-deodex-tool-android-l-t2972025
tdunham said:
Right, I get a single 75mb dex file from boot.oat. When dex is decompiled I get this directory structure:
android
com
dalvik
java
javax
libcore
org
sun
Now, how can we recompile back to multi dex so it is usable?
Click to expand...
Click to collapse
Hmm...dunno.
I can't spot an issue for this one but I would assume that JesusFreke's working on it. This is somewhat of a significant file...
_alexndr said:
Indeed, I didn't think of that well, I just didn't need it yet
BTW
Look at this:
http://forum.xda-developers.com/galaxy-s5/general/tool-deodex-tool-android-l-t2972025
Click to expand...
Click to collapse
Perfect!
This tool seems to do the trick for the boot.oat and the rest of the framework files. Now to see if I can boot with the altered framework because the system just seems to hang after replacing with the new framework folder (deleting entire framework and replacing with new one).
I may need to compare NL2 framework with ours in case some files are getting missed by the tool since we are not running that build.
I didn't need to test attached tools before because @sorg has shared with us BNL2 deodexed ROM and it works fine
Today Sammy has released G900FXXU1BNL7 (higher changelist than BNL2) so I've tried patched tools, but without success (FC)
Does anybody have any idea what I am doing wrong?
Code:
7za x SecMms_Candy.odex.xz
oat2dex SecMms_Candy.odex SecMms_Candy.dex
baksmali-art -a 21 -x SecMms_Candy.dex -o SecMms_Candy
smali-art -a 21 SecMms_Candy -o classes.dex
7za u -tzip SecMms_Candy.apk classes.dex
(bak)smali-art.bat are simply my *.bat files which calls sorg's patched jar files (java -jar [filename].jar %1 %2 %3 .... etc)
I've used oat2dex tool from HERE and of course patched @sorg's (bak)smali tools from this thread
I've tried to deodex both - BNL7 and even BNL2 version of SecMms_Candy - same result (FC) - see my logcat
Code:
I/art ( 7231): Verification error in void com.android.mms.Log.<clinit>()
I/art ( 7231): void com.android.mms.Log.<clinit>() failed to verify: copyRes1 v0<- result0 type=Undefined [0x11]
E/art ( 7231): Verification failed on class com.android.mms.Log in /system/priv-app/SecMms_Candy/SecMms_Candy.apk because: Verifier rejected class com.android.mms.Log due to bad method void com.android.mms.Log.<clinit>()
_alexndr said:
I didn't need to test attached tools before because @sorg has shared with us BNL2 deodexed ROM and it works fine
Today Sammy has released G900FXXU1BNL7 (higher changelist than BNL2) so I've tried patched tools, but without success (FC)
Does anybody have any idea what I am doing wrong?
Code:
7za x SecMms_Candy.odex.xz
oat2dex SecMms_Candy.odex SecMms_Candy.dex
baksmali-art -a 21 -x SecMms_Candy.dex -o SecMms_Candy
smali-art -a 21 SecMms_Candy -o classes.dex
7za u -tzip SecMms_Candy.apk classes.dex
(bak)smali-art.bat are simply my *.bat files which calls sorg's patched jar files (java -jar [filename].jar %1 %2 %3 .... etc)
I've used oat2dex tool from HERE and of course patched @sorg's (bak)smali tools from this thread
I've tried to deodex both - BNL7 and even BNL2 version of SecMms_Candy - same result (FC) - see my logcat
Code:
I/art ( 7231): Verification error in void com.android.mms.Log.<clinit>()
I/art ( 7231): void com.android.mms.Log.<clinit>() failed to verify: copyRes1 v0<- result0 type=Undefined [0x11]
E/art ( 7231): Verification failed on class com.android.mms.Log in /system/priv-app/SecMms_Candy/SecMms_Candy.apk because: Verifier rejected class com.android.mms.Log due to bad method void com.android.mms.Log.<clinit>()
Click to expand...
Click to collapse
Try another backsmali.
svadev said:
Try another backsmali.
Click to expand...
Click to collapse
Thanks, but same errors see attachment ...
@sorg... how did you do that? Your deodexed BNL2 files seems to be the only that works...
DISCLAMER: I don't provide any support for this application. Neither provide any guides. It's strictly for devs only.
Click to expand...
Click to collapse
I know... But we are not a noobs, we need only the hint(s), no quides
Just to be clear - I put framework contents in same folder as I am working in, so "-d" option was not necessary (tried with original and with @sorg's framework).
But maybe the key is to use "-c" option and add additional dependencies, but which...?
After I lost a lot of time to add additional languages to the EUI, I want to share how it is done.
I used ready translations from this rom:
LeTV LeEco Le Pro3-X720 Android 6.0 Qualcomm Snapdragon 821 Smartphone Firmware
blog.geekbuying.com/2016/12/letv-leeco-le-pro3-x720-android-6-0-qualcomm-snapdragon-821-smartphone-firmware-211030-161230/
Required folders and files:
/system/framework
/system/framework/framework-res.apk - System wide languages
/system/priv-app/Settings/oat/arm64/Settings.odex
/system/priv-app/Settings/Settings.apk
Apktool.zip:
drive.google.com/file/d/1pLhHEhxOR7NvFr1T6FFVZoF8hskcDZPE/view?usp=sharing
unzip to C:
cd C:\Apktool
STEP 1: delete old frameworks
Code:
apktool empty-framework-dir --force
STEP 2: Decoding & Building framework-res
Code:
apktool d framework-res.apk
- Now make your changes
Code:
apktool b framework-res -o framework-res-new.apk
copy new resources.arsc from framework-res-new.apk without compression into original framework-res.apk
STEP 3: install a rom framework-res; check C:\Users\%USERNAME%\AppData\Local\apktool\framework
Code:
apktool if framework-res.apk
copy folder \system\framework to C:\Apktool
STEP 4: Decoding & Building Settings.apk
plus.google.com/112981865005880407431/posts/MAmuc5LkcEh
Code:
java -jar baksmali-2.2.4.jar deodex Settings.odex -b framework\arm\boot.oat -d framework -o out
java -Xmx1024m -jar smali-2.2.4.jar assemble out -o classes.dex
pack resulting classes.dex without compression into original Settings.apk
Code:
apktool d Settings.apk
- Now make your changes
Code:
apktool b Settings -o Settings-new.apk
copy new resources.arsc from Settings-new.apk without compression into modified Settings.apk
STEP 5:
delete framework-res.apk in /system/framework/framework-res.apk on your device.
Copy a new framework-res.apk from /sdcard/ to /system/framework/. Set permissions to 644.
Code:
chmod 644 /system/framework/framework-res.apk
delete Settings.apk and Settings.odex in /system/priv-app/Settings/ on your device.
Copy a new Settings.apk from /sdcard/ to /system/priv-app/Settings/. Set permissions to 644.
Code:
chmod 644 /system/priv-app/Settings/Settings.apk
Wipe -> Advanced Wipe -> Dalvik / ART Cache