DO THIS AT YOUR OWN RISK MODDING FRAMEWORK IS DANGEROUS READ EVERYTHING BEFORE DOING ANYTHING
Im not responsible for bricks
your house burning down
your cat gone missing
or your phone blowing up
Ok this is NOT my idea here is the original thread http://forum.xda-developers.com/showthread.php?t=1364757
first you will need the android sdk http://developer.android.com/sdk/index.html
you need to install it on your C: directory eg:/android/android sdk
notepad++ is needed to
7zip is also needed and you need to set it as default program for apks
and apktool http://code.google.com/p/android-ap...mmary+Uploaded+ReleaseDate+Size+DownloadCount use apktool 1.4.2 if you get problems with 1.4.3 you will need apktool installer and apktool once extracted put them in a folder in the C: directory and add them to path eg; C:/android/apktool/
THE ANDROID SDK AND APKTOOL NEED TO BE ADDED TO PATH OR NONE OF THIS WILL WORK!
lets get started!
the decompile
1: open command promt and type in
Code:
cd android
(make this folder b4 you start in your user)
2:then
Code:
adb remount
if you installed adb correctly it will say remount succeeded
3:then type this in
Code:
adb pull /system/framework/framework-res.apk
once its done pulling apk
go to android in your user and you will see (if you did it right) framework-res.apk
4: back to cmd and type in
Code:
apktool d framework-res.apk
let it do its stuff
once done goto android in your user and the apk will be decompiled there for you
the modding
1: open up framework-res click on res and scroll down to values open it and click on bools
2: open bools in notepad++ and find "config_showNavigationBar" and set to true
3: now open dimens and find "navigation_bar_height" and set to 34.0dip
4:if your running a kernel like glitch devils you can disable the touch key backlights using nstools
5: done!
the recompile
you will need to switch out the appt in the folder you put apktool and stuff eg:were i put mine C:/android/apktool/
new appt http://www.mediafire.com/?0q52u6v8vdkpq1i
1:switch out appt with the new one
2:goto cmd and type
Code:
apktool b framework-res
then press enter
3:if you did everything right (installing android sdk and apktool) this part should take about 5min
4:if the recompile succeeded kiss your self (joking)
5: open android in your user (NOT ON C: DRIVE) and click on framework-res you will see a new folder called "build" click on it and
you will se three files one of these is "AndroidManifest" leave that well alone open framework-res.apkin 7zip and drag the two folders in "build" into the apk again dont drag androidManifest once the modded filles are in the apk close 7zip
adb push it back to your phone
1:in command promt type
Code:
adb push framework-res.apk /system/framework/
2:when push is complete type
Code:
adb reboot
this will now reboot your phone
3: once booted up you should see the three touch keys at the bottom of your screen everything will look cramped
so goto market and download LCD Density Modder and change the dpi from 240 to 228 reboot and enjoy
obviously this guide is for NOOBS this is not my idea just wanted to give people a easier guide to modding framework
all credit goes to evilisto not me hope you do what you want!!!
this will also work on
nexus s
nexus one
galaxy s II
vibrant
crappy
and galaxy note
other phone you probably can but these are the only ones ive tried it on try on other phones at your on risk
happy modding
peace
Related
I have UltimateDroid 2.5 on DInc and I wanted to get rid of the default wallpaper, the android figure with the eyepatch. I know it is in framework.apk/drawable. I wanted to know how to delete the wallpaper from framework and put it back into the system folder. Thanks.
I'll help you with this. I'm assuming you know how to run the adb terminal and have 7zip installed.
first off always nandroid.
After you load cmd, change the directory to your adb, do this.
Make sure your device pops up after typing "adb devices"--no hyphens, if you already knew that my bad.
type:
adb remount
adb pull /system/framework/framework-res.apk
it will show up in your sdk folder in the tools directory. Right click the framework-res.apk. Find 7z and select open archive. Find the res folder, double click. Then find the drawable folder. The default wallpaper is located there. Slide whatever image you want into it after renaming it to default_wallpaper.jpg. After your done editing, close it out . in cmd type:
adb push framework-res.apk /system/framework
adb reboot
It's changed.
I use Battery Indicator and don't like having two battery gauges at the top. I'm running Myns RLS5. Thanks
Any help would be great, as I need to remove the clock for the same reason. Who has the skills - please?!
Sent through space & time on the wings of 4G
You guys can do this yourself, look HERE
Anseri said:
SteelH said:
7. HOW-TO hide the clock
This reference assumes that you already know how to recompile a framework file using smali/baksmali.
Click to expand...
Click to collapse
This is the gotcha - I am not familiar with the Samali/baksmali tool, and the documentation I was able to find was not helpful.
Suggestions?
Click to expand...
Click to collapse
tgearman said:
Anseri said:
This is the gotcha - I am not familiar with the Samali/baksmali tool, and the documentation I was able to find was not helpful.
Suggestions?
Click to expand...
Click to collapse
Me neither. I was hoping to find a flashable zip file that would take care of this but no luck yet.
Click to expand...
Click to collapse
wirenut110 & tgearman - PM me if you want me to custom,ize your services.jar to remove whatever you would like removed.
For the clock removal (3.70) can't link it from my phone but the paper clip in Myn's Rom thread has it. (3.70 OTA no clock)
Sent from my PC36100 using XDA App
Im making a DIY guide right now. itl include how to use smali/baksmali
Skullmonkey said:
Im making a DIY guide right now. itl include how to use smali/baksmali
Click to expand...
Click to collapse
You could start with this:
1. Connect phone using USB and check that you can see your device using: adb devices
2. in your SDK/tools directory from command line do:
Code:
adb pull /system/framework/services.jar services.jar
3. Make a backup of the services.jar file that just popped in the tools folder just in case!
4. Download smali and baksmali from http://code.google.com/p/smali/ and place them in the tools folder. Rename the files to baksmali.jar and smali.jar to save on typing later
5. Open the services.jar file with something such as winrar or 7zip or whatever you prefer
6. Copy out the classes.dex file to your SKD/tools folder
7. run following from command line:
Code:
java -jar baksmali.jar -o classout/ classes.dex
8. Now browse to your new folders /classout/
9. Open the file you want to edit (i.e. the smali file) in something like notepad or context or any text editor, edit it, then save it
10. Now back to the command line and from your SDK/tools folder run:
Code:
java -Xmx512M -jar smali.jar classout/ -o new-classes.dex
11. If the above finishes without errors you should have a file called new-classes.dex in your SDK/tools folder now that is the same size as your classes.dex file.
12. Rename the old classes.dex file to classes-old.dex and rename the new-classes.dex file to classes.dex
13. Open the services.jar file with your archiving tool again from step 5 and replace the existing classes.dex file with our new classes.dex we just created.
14. From command line run:
Code:
adb remount
15. also from command line:
Code:
adb push services.jar /system/framework/
16. Finally run:
Code:
adb shell reboot
ok... this is what i put together... either way will work
Purpose:
This will let you remove various status bar elements such as the clock and battery icons.
Disclaimer:
I am not responsible for any damage done to your phone. Always do a nandroid backup before doing any changes to your phone.
Requirements:
- (bak)smali
- Text Editor (I use Notepad++)
Instructions:
1. Extract classes.dex from services.jar (best to get a clean copy from your rom found in /system/framework/) and place it in your SDK/Tools folder.
2. Open a command prompt/terminal and change the directory to your SDK/Tools folder
3. Run this command (without quotes)
"java -jar baksmali.jar -o classout/ classes.dex" ~Tells baksmali to take classes.dex and decompile it into a folder called classout/
4. Delete classes.dex file from your SDK/Tools folder (saves confusion later)
5. Remove whatever you would like. SteelH has a post on all of these located here.
6. Now that all your changes are made, we need to recompile classes.dex. To do this, run this command (without quotes and capitalization matters)
"java -Xmx512M -jar smali.jar classout/ -o classes.dex" ~tells smali to take the classout/ folder and recompile it to classes.dex
7. Take classes.dex and add it to your services.jar overwriting the old one.
8. Use your favorite method to flash to your phone. If you need to create an update.zip, you can download a blank one in the attached file and place services.jar in the system/framework/ folder of the zip archive and flash like normal.
Click to expand...
Click to collapse
I see on Myn's thread someone posted a zip to remove the clock that is for the latest framework.
Find out who posted it and send then your mod request directly. I'd run it down for you, but I'm out to dinner my phone is going to get confiscated if I don't put it back in my pocket soon...
Sent through space & time on the wings of 4G
OK guys, have a look HERE. This should solve all your problems.
SteelH - you are THE MAN!!
Sent through space & time on the wings of 4G
Worked like a champ - just had to toggle signature verification.
Thank you very much, kind Sir. It's folks like you that make XDA rock!
SteelH said:
OK guys, have a look HERE. This should solve all your problems.
Click to expand...
Click to collapse
Thanks SteelH. That worked.
I've tried my hardest on my own, but I cannot seem to decompile and compile the systemui.apk properly without throwing brut errors. I've used APK manager and apktool, and both give me errors about the dependencies I'm trying to use. For reference, I'm using NilsP's last release of 2.1/3.0 business sense.
What am I trying to do?: remove the gprsone icon from the statusbar. I know the .png is transparent, but still takes space up on the bar.
Reference thread: http://forum.xda-developers.com/showthread.php?t=1231831
Any pointers? I've attached the framework-res and systemui in case somebody needs it to help.
Sure I can help. With apktook, you need to register your resources which are framework-res.apk and com.htc.resources.apk. Once you've registered those, then decompile the SystemUI.apk with apktool.
EDIT: Here's a quick little "How To" I use for apktool.
Put com.htc.resources/framework-res.apk's into the C:\Users\<username>\apktool folder (or where ever you keep your apktool)
Go to that directory in a CMD window, and type in:
apktool if framework-res.apk
Hit Enter
apktool if com.htc.resources.apk
Hit Enter
Decompile run: apktool d <apk name>.apk
Compile run: apktool b <apk folder name only>
After you compile it, the apk will be in the dist folder. So for SystemUI.apk, the folder is named SystemUI. Open SystemUI/dist, and move the SystemUI.apk folder to your desktop. Use 7zip to open the original SystemUI.apk, extract the META-INF folder and Android Manifest. Open the new SystemUI.apk and put the META-INF and Android Manifest files into this new apk. You should be good to go then.
If you get really stuck, let me know and upload your com.htc.resources.apk, and I can help you out.
Attached are successful screenshots of registering your resources and decompiling successsfully, then recompiling successfully for reference as to what you should see. I used a Rosie.apk, but it'd be the same with SystemUI.apk.
Thank you for taking the time out to help!
Sorry but I followed your instructions to a T, but my phone won't get past the HBOOT (i think that's the correct term)
This time, I didn't get compile errors with apktool, but I'm not sure I did everything correctly.
I've attached my com.htc.resources.apk
http://www.mediafire.com/?2yoijsmr954md1g
Okay, I downloaded your SystemUI.apk file, and removed the classes.dex file using 7zip and decompiled that using a Java command and baksmali. I made the edits, recompiled the new classes.dex file using a Java command and smali.
It's a different way of doing things, and how I first learned to hide the location icon, and status bar clock so I feel most comfortable with doing it that way.
Attached is the updated SystemUI.apk you provided, with *hopefully* a hidden location icon from the status bar.
The easiest way to do this:
Hook phone up to computer via USB, reboot into Recovey.
Mount /system.
Open command prompt, CD to your SDK/platform-tools directory.
Type in: adb shell
Type in: cd /system/app
Type in: cp SystemUI.apk SystemUI.bak
NOTE: This makes a copy of SystemUI.apk named SystemUI.bak.
Type in: rm SystemUI.apk
NOTE: This removes SystemUI.apk, we can always to the opposite of the cp command from above to get the original back.
Type in: exit
Now make sure your modded SystemUI.apk is in your SDK/platform-tools folder, then type: adb push SystemUI.apk /system/app/
Now let's make sure that the permissions will be correct, so adb shell back into your phone, and then type cd /system/app.
Lastly, type: chmod 0644 SystemUI.apk
Hit Enter.
Type in: exit
We're done, reboot your phone.
I want to say thanks for helping me out today.
I learned some things and got the location icon removed from the statusbar.
This sounds like a win!
kschwarz88 said:
I want to say thanks for helping me out today.
I learned some things and got the location icon removed from the statusbar.
This sounds like a win!
Click to expand...
Click to collapse
Dude, that's great to hear! I love sharing what I've learned, and am glad you took the time and learned something! This stuff is fun, so continue learning!
It's a total win! If you wanna know the Java commands to decompile classes.dex, let me know, and I can pass that knowledge on!
Sent from my ADR6300 using xda premium
[GUIDE] How to decompile an apk <updated w/ guide><updated with compiling>
thought i would transfer this for you guys if you need it. here is original link
http://forum.xda-developers.com/showthread.php?t=1188389
How to decompile an .APK:
Step 1:
Download >>This<< this is a tool for decompiling an .apk (i take no credit for this tool i did not make it i cant remember where i got it but the credit goes to the maker)
Step 2:
Now go to your C:\ directory create a new folder (doesnt matter what you name it) now extract the apk_manager to the folder that you created.
Step 3:
Download: >>This<< and also >>This<<
(whatever you are using 7zip or winrar, go into settings and integration and check the .BZ2 file extension)
Step 4:
Extract both files to the other folder in apk_manager
Step 5:
Plug your phone into your computer and pull framework-res.apk and twframework-res.apk from your /system/framework/ directory and place both files in the other folder
Step 6:
open up command prompt and enter
cd/
cd (whatever you named the folder that you put apk_manager)
cd other
apktool if framework-res.apk
Step 7:
cd/
cd (whatever you named the folder that you put apk_manager)
cd other
apktool if twframework-res.apk
Step 8:
now grab the apk that you want to decompile and place it in the place-apk-here-for-modding folder
Step 9:
open script now enter 22 into command press enter, press corresponding number for your apk for ex. 1 then press enter, now press 9 then enter... APK should now be decompiling (decompiled apk should be in the projects folder)
[size=+2]Compiling[/size]
You do nearly the same thing for compiling an apk press 22 and enter to select what project you want to do, then 11; your apk should be compiled
Let me know if anyone has any problems with this
How to extract an apk and repackaging it?
It needs help
Thank you
minhlc1956 said:
How to extract an apk and repackaging it?
It needs help
Thank you
Click to expand...
Click to collapse
Did you try This?
rayford85 said:
Did you try This?
Click to expand...
Click to collapse
lol, but i think he might mean the classes removal and the right .jar ver also.
rayford85 said:
Did you try This?
Click to expand...
Click to collapse
Very useful for me
Thank you much
toolhas4degrees said:
lol, but i think he might mean the classes removal and the right .jar ver also.
Click to expand...
Click to collapse
A hard man
I sent you a pm with tools. pm me if you need help
apktools ics (taken from rayford85's page a while ago thanks buddy)
Link
https://dl.dropbox.com/u/74861217/APKtoolsForICS/ApktoolsForIcs.zip
Easysignapk (forgot who made the batch file, but credits to them great work)
Link
https://dl.dropbox.com/u/74861217/APKtoolsForICS/signapk/EasySignApk.zip
toolhas4degrees said:
I sent you a pm with tools. pm me if you need help
Click to expand...
Click to collapse
I really need your help
Thank you very much
here is a guild
http://androidforums.com/esteem-all...roperly-decompile-recompile-apks-apktool.html
but just open the command prompt in each folder instead of browsing to it.
0.first of all unzip both of the tools i gave you into a folder bearing their name.
1. put framework-res.apk in both decompile and compile folders, and the apk you wish to mod.
2. open the .apk you wish to mod with winzip, or 7-zip and copy classes dex to a safe place(do this by grabbing the file while .apk is opened in 7- zip and pulling it to a folder).
open the command prompt in decompile folder and type "apktool if framework-res.apk" press enter
3.now type "apktool d (name of apk you wish to mod).apk" press enter
4.close prompt go back to the decompile folder and look for a folder with the name of the apk you are modding.
5.make all your edits.
6.Copy that folder(the work one) to the compile folder.
7.open command prompt in the compile folder.
8.make sure you have the framework-res.apk file there as well
9.again type "apktool if framework-res.apk" press enter
10.then type "apktool b (name of folder your apk edits are in) (name you wish to name it).apk
11.should compile(look in the work file when it is done and go to build folder and open it with winzip, or 7-zip)
12.pull the classes dex you saved into the open .apk file in 7-zip then close.
13.put that zip file into the input folder of the easysign apkfolder, and then open signature.
press 1, press enter, press y, press enter.
go to the output folder and there will be your completed .apk
toolhas4degrees said:
here is a guild
http://androidforums.com/esteem-all...roperly-decompile-recompile-apks-apktool.html
but just open the command prompt in each folder instead of browsing to it.
0.first of all unzip both of the tools i gave you into a folder bearing their name.
1. put framework-res.apk in both decompile and compile folders, and the apk you wish to mod.
2. open the .apk you wish to mod with winzip, or 7-zip and copy classes dex to a safe place(do this by grabbing the file while .apk is opened in 7- zip and pulling it to a folder).
open the command prompt in decompile folder and type "apktool if framework-res.apk" press enter
3.now type "apktool d (name of apk you wish to mod).apk" press enter
4.close prompt go back to the decompile folder and look for a folder with the name of the apk you are modding.
5.make all your edits.
6.Copy that folder(the work one) to the compile folder.
7.open command prompt in the compile folder.
8.make sure you have the framework-res.apk file there as well
9.again type "apktool if framework-res.apk" press enter
10.then type "apktool b (name of folder your apk edits are in) (name you wish to name it).apk
11.should compile(look in the work file when it is done and go to build folder and open it with winzip, or 7-zip)
12.pull the classes dex you saved into the open .apk file in 7-zip then close.
13.put that zip file into the input folder of the easysign apkfolder, and then open signature.
press 1, press enter, press y, press enter.
go to the output folder and there will be your completed .apk
Click to expand...
Click to collapse
Need help
Compile the app SystemUI repackage this error
C: \ apktool> apktool b SystemUI NEW.apk
Exception in thread "main" brut.androlib.AndrolibException: brut.directory.PathN
otExist: apktool.yml
******** at brut.androlib.Androlib.readMetaFile (Androlib.java: 142)
******** at brut.androlib.Androlib.build (Androlib.java: 159)
******** at brut.androlib.Androlib.build (Androlib.java: 154)
******** at brut.apktool.Main.cmdBuild (Main.java: 182)
******** at brut.apktool.Main.main (Main.java: 67)
Caused by: brut.directory.PathNotExist: apktool.yml
******** at brut.directory.AbstractDirectory.getFileInput (AbstractDirectory.java:
103)
******** at brut.androlib.Androlib.readMetaFile (Androlib.java: 138)
******** ... 4 more
C: \ apktool>
Thank you very much