Metamorph won't apply framework-res to ESE53? (A noob guide to adb pull/push theming)
Due to the system partition being filled HEAVILY in Cyanogen and UD (Also possibly JRummy's remixes), I am not currently sure of a way to make this system work. The large amount of stuff within the system partition on those roms prohibits adb from being able to push the framework-res.apk back onto the phone, because the entire file is copied over before overwriting. Because of all of the added features and etc in these roms, there isn't enough room in the system partition for this to occur
So, I and some others have noticed that Metamporph simply reboots the phone when attempting to apply a theme framework-res and doesn't apply when attempting to theme 2.1 ESE 53 roms . I wrote this guide after trying this out for myself. This was MY first time with this process, so don't be intimidated by the length of this guide. Just want to make it thorough enough that you're not left with questions!
This worked for me, but I won't GUARANTEE results. The theory is simple, but people with little-to-no adb experience may not know that this is even possible. I wrote this up in another thread and figured I'd pull it out on its own.
FIRST Do a fresh nandroid backup. If this doesn't work, I take no responsibility for ANYTHING you lose. Sorry, but that's the way it is.
I setup my SDK as described here How To: Set Up ADB/USB Drivers for Android Devices | The Unlockr so, if you put your SDK in a different location, you MUST replace my C:/AndroidSDK/tools/ etc with YOUR path. Won't work if you don't. If you don't already know, adb is NOT an app or a computer program. For lack of better term, adb is simply coding used to accomplish things like what I describe here.
I'll start from the VERY beginning assuming you have the SDK all setup and ready to go. If you don't, use the link about to make it easy-peasy!
-enable usb debugging. This should be in the directions in the link above for setting up ADB.
-create a nandroid backup before attempting! (catching the drift?)
-enable airplane mode before beginning. This will ensure that nothing interrupts the process, as you're dealing with IMPORTANT system files here.
-Not exactly a must, but it's a good idea to unzip the contents of the theme's .zip file onto your computer.
-Follow capitalization in the commands provided EXACTLY. The only way capitalization should be different is if your SDK is in a differently named folder. ie, you simply named the folder android.
-Read the WHOLE guide before starting so you can get an idea of the process! :D
For this example, I'm using the theme I tried this with, Droidinator http://www.droidforums.net/forum/dro...metamorph.html This theme requires you to replace 3 xml files in order to use the theme on 2.1. Please be sure that the theme you're attempting to use is claimed to work on 2.1. I don't know what'll happen if it's not.If you would like to use the basic framework of this theme, download the following .apk file and place it in your AndroidSDK tools folder and skip to step 10. Free File Hosting Made Simple - MediaFire
1. Connect your phone to your computer via usb and mount it.
2. Access Command Prompt (type cmd in your startup search bar or "run..." box.
3. Type the following commands. After EACH LINE, press enter. ie cd\ (ENTER) cd AndroidSDK\tools\ (ENTER). Scroll to the bottom of this post for a brief description of what each command is doing. If you'd like to simply copy and paste my commands (only recommended if you setup your SDK EXACTLY as shown in the link above), when you are ready to paste them into Command Prompt (CP), you MUST right-click in CP and select paste. If you Ctrl+v, those keystrokes will register. If that confuses you, I suggest you place CP on top of this window to type them yourself.
adb pull /system/framework/framework-res.apk c:/AndroidSDK/tools
:::STOP HERE::: Leave Command prompt open.
4. Open the folder for the theme that you're attempting to install. It's not a bad idea to go ahead and extract the theme's files onto your computer as mentioned above.
5. Locate the res folder within the theme's framework-res folder. Example I'm looking at c:/DROIDINATORv6/framework-res/res. Open the res folder.
6. In another window, open the framework-res.apk. A .apk is basically a .zip file with a different extension. You can open a .apk using WinRAR. This is also handy for unpacking nandroid backups for ROM installs. It can be downloaded here...WinRAR archiver, a powerful tool to process RAR and ZIP files the framework-res.apk file will be loacted in c:/AndroidSDK/tools if you setup your SDK the same way it is done in the link above.
7. Within the framework-res.apk, locate and open the res folder. This can be done within WinRAR.
8. Return to the window that you have the theme's res folder open in. In the theme that I'm using, there are 3 folders in here: drawable-hdpi, drawable-land-hdpi, layout.
Each of these folders has a corresponding folder with the framework-res.apk's res folder. Step 9 is the simple part.
9. Copy and paste all files from each individual folder in the theme's res folder (drawable-hdpi, etc) into the corresponding folders within the framework-res.apk. WinRAR will ask you what directory you'd like to use. Ensure that the path it suggests is the path to your framework-res.apk file. MINE WAS CORRECT BY DEFAULT, so you shouldn't need to change ANYTHNG. If yours is correct, click to accept.
Every file from your theme's res folder MUST be placed in the corresponding framework-res.apk folders for this to work. It will automatically overwrite the files that are there. These are what make your droid look pretty and are what MM would install if it worked on these roms.
10. Once you've replaced the files in the framework-res.apk, close WinRAR and return to Command Prompt (I didn't click anything to save the changes, but it worked, so you don't need to save unless you really want to. IF you do, be SURE that the file is still located in the AndroidSDK tools folder and is still ONLY named framework-res.apk.
If you downloaded the framework-res.apk file I provided above and placed it in your SDK tools folder, you must also be certain that the file is named correctly... framework-res.apk
In Command prompt, type the following:
adb push framework-res.apk /system/framework
:::When your phone reboots, you may simply close command prompt:::
11. Enjoy your newly themed ESE53 rom!
Now, an explanation of what each of the commands you've used (or are going to use if you've come down here to learn before you do...)
cd\ --Changes directory on your pc to c:
cd AndroidSDK\tools\ --Takes you to the SDK
adb devices --Discovers your phone.
adb remount --Remounts your phone for use with command/adb
adb pull /system/framework/framework-res.apk c:/AndroidSDK/tools --Pulls the framework-res.apk from your phone into your SDK tools folder
adb push framework-res.apk /system/framework --Pushes the framework-res.apk BACK into the phone.
adb reboot --Reboots the phone.