How to MetaMorph/Theme

Search This thread

bmwpersson

Member
Apr 20, 2009
17
1
Is metamorph themes device specific or should it work to install a theme made for another device but for the same Android version, in my case 2.2?

The theme I've found is made for ZTE Blade and I would like to install it to my Dynavin unit in my car.
 

rayhodge02

Senior Member
Apr 16, 2011
646
409
psl fla
theme not installing..

I tried to change my unlock picture to something else I downloaded the correct file the zip is on my phone and is extracted..I then go to pick existing themes it ask me to pick a xml file I do that and hit apply all...continue...and nothing..what step did I miss thanx
 

guiniol

Senior Member
Sep 25, 2012
68
39
Failing to add/modify files with metamorph

Hello,

I've been reading trough this and other posts and I didn't find a solution to my problem.
Maybe someone can help.

I'm trying to package a 1% battery mod.
For this mod I need to modify
Code:
stat_sys_battery_charge.xml
and
Code:
stat_sys_battery.xml
in
Code:
SystemUI/res/drawable
.
Somehow metamorph can't seem to modify them properly.
If I decompile the morphed apk using apktool, I get:
Code:
Could not decode file, replacing by FALSE value: drawable/stat_sys_battery.xml
Does anyone know how to fix this problem, or am I mistaken about metamorphs capabilities?
I attached the file in case anyone wants to take a look.

EDIT: It seems that I need to edit the
Code:
res/values/public.xml
, but I don't know how to calculate the values...
 

Attachments

  • CM10_roundbatt_zuberio.zip
    785.7 KB · Views: 39
Last edited:

3rdstring

Senior Member
Dec 19, 2010
2,221
1,082
Cincinnati
Hello,

I've been reading trough this and other posts and I didn't find a solution to my problem.
Maybe someone can help.

I'm trying to package a 1% battery mod.
For this mod I need to modify stat_sys_battery_charge.xml and stat_sys_battery.xml in SystemUI/res/drawable.
Somehow metamorph can't seem to modify them properly.
If I decompile the morphed apk, the files are corrupted.
I also need to add a png for each percent of the battery, but it seems I can only modify existing percents.
Does anyone know how to fix these problems, or am I mistaken about metamorphs capabilities?
I attached the file in case anyone wants to take a look.

Any XMLs you include in a morph need to be compiled.
 

guiniol

Senior Member
Sep 25, 2012
68
39
Any XMLs you include in a morph need to be compiled.

Thank you.
I got the compiled xml files from a working apk I made with apktool.
I'll check for any independent way to do that.

The only way that I got the theme to work though was by modifying the resources.arsc
This will make the theme depend on the app version, am I right?
Is there anything I'm missing? I'd like the theme to be independent of the specific version...
 

Top Liked Posts

  • There are no posts matching your filters.
  • 39
    Credits for MetaMorph Go to Stericson and Kastro.
    Credits for the MetaMorph Gui (The application) go to Stericson
    Honorable mentions go to Riku, prash, and djengizz For continued support and testing metamorph!

    MetaMorph is located in the Android Market in both a free version and a 2.99 donate version, with the donate version being a step ahead of the free version. (One version may be behind the other but they both will receive the same updates)

    If youd like to support MetaMorph and keep development going on it please consider purchasing the 2.99 donate version :)

    What MetaMorph is

    MetaMorph is a project designed to allow us to patch files within .jar and .apk files on the phone.

    Initially MetaMorph was designed for themers but it was discovered through use that we could also use it for applying customer dex files, resource files, images, and xml files. Pretty much anything inside of the apk and jar can be replaced with MetaMorph, which makes it very versatile and useful, in addition to this we can now copy files to places on the phone or sdcard, and we can implement the use of scripts now!

    In this thread we will discuss how to theme using MetaMorph and any bugs that may be found with MetaMorph.

    To use metamorph simply download an appropriate package for it to your sdcard and select it with MetaMorph.

    Here is some basic info about MetaMorph:

    Compatible themes can be found in various forms around the XDA forums, try looking by device. (eventually the donate version will get a theme repository, the free version wont get it)

    I only recommend downloading what is in the first posts as those have been tested to work with your device and rom!

    Please report any bugs.

    MAKE A NANDROID BACK BEFORE USING.
    Use at your own risk :)


    Heres the link to videos showing metamorph in use:

    Part1: http://www.youtube.com/watch?v=xaTVRul-juY

    Part2: http://www.youtube.com/watch?v=FqLuyeiM-Qo

    Heres a quick video showing a metamorph theme being made from scratch using the old .thm control file! (which is not being supported anymore)

    http://www.youtube.com/watch?v=p9y3ooUZZrg

    MetaMorph uses a fairly simple format to apply changes to apk or jar files, here you can find out how to create these templates:

    http://www.youtube.com/watch?v=fX2xbY4nSd4 (Video 1/4)
    http://www.youtube.com/watch?v=Dvps2501CAg (Video 2/4)
    http://www.youtube.com/watch?v=3iu5AHF-Zew (Video 3/4)
    http://www.youtube.com/watch?v=sgVL-0E8Rh8 (Video 4/4)

    To tell metamorph what to do you need to include a Theme Control File. The Theme control file is located in the root directory of the template and MUST have the EXACT same name as the template. Here is a video on how to make the Theme Control File:

    http://www.youtube.com/watch?v=Mq4AuHKzNFo

    (The old .thm control file is no longer supported. if you need to convert your old theme to use the new .xml toll check here for a tool that will convert it for you:
    http://bit.ly/df70cv )

    Compression is not accepted on MetaMorph zip templates.

    The latest version of MetaMorph (MetaMorph Pro V1.9.8) can be found in the Android Market!

    ================================================================================
    // MetaMorph, what it is and isn't
    ================================================================================


    MetaMorph, at heart, is simply a program that takes files from a directory and adds them to an already existing zip package.

    In this case, our zip packages are apk and jar files.

    What metamorph is used for, or what it accomplishes by moving files around is completely up to the designer of the package that is used.

    For instance, if I make a package that tells metamorph to move a dex file into services.jar then I may be wanting to change the color of the clock which resides on the status bar. If this happens then MetaMorph has not done this, the creator of the package has done this and metamorph was simply the tool he/you used to accomplish this easily. In the same sense, if the desired change does not happen it is most likely not because of metamorph, but rather a fault in the package or instructions that metamorph was given.

    here are some things using metamorph can cause:

    1) As of right now MetaMorph cannot be used on market apps. If you do happen to use a package that modifies market apps, they will disappear from your phones launcher menu. This is because market apps are signed with Developer keys and by changing them we are changing the md5sum of the package. When this occurs the package takes notice of this change and starts rechecking its integrity. When the package discovers it has changed and has not been resigned with its approved key, thereby approving these changes in a sense, then it will basically error out and Android will remove it. Again MetaMorph can be faulted because it cannot handle this type of action but it cannot be faulted for this if you do it after reading or knowing of this limitation.

    2) MetaMorph may also show you and error that some file doesnt exist or that some file that the theme control file is looking for doesnt exist. Again while these errors are thrown by MetaMorph, they are not caused by MetaMorph but by the package that you selected. When MetaMorph runs it checks for two things:

    A) That the directory that the theme control file has specified where
    the contents that we are to move to another zip package actually
    exists in the theme.

    AND

    B) That the target zip package that we will add files to actually
    exists in the path that the theme control file has specified.

    This protects the ap from Force closing, and the second check protects you from having unneeded files being created on your phone when it detects that the target apk doesn't exist.

    If you have any issues with a theme/package not working please speak with the theme/package creator.

    If you have issues, questions, or suggestion with/for MetaMorph please leave them here.

    If you have questions about how MetaMorph can be used and how to create packages for it, please leave them here.


    If you still have problems with a theme or package that cannot be resolved by the theme/package creator please let us know so that we can take a more in depth look into the issue.


    =========================
    HELP!
    =========================


    Theme not applying

    The issue here is that your phone probably doesnt have enough space in your /system partition, you can check the space using "df" in a shell. (terminal or another like program)

    Depending on the device you have you may need a different SPL to be able to apply themes.

    MetaMorph is a tool designed to change files within apks and jars. With this goal in mind MetaMorph succeeds very well.

    However, MetaMorph cant predict what you will do with it. The packages you apply with it are are unknown to MetaMorph, and it cant be held responsible for what you decide to apply.

    With this being said, it is your responsibility to make sure that the package you apply will work for your phone, and it is the themers responsibility to let you know what requirements are needed to use his package, this includes free space, specific hardware, and specific software needed.


    Thanks,
    Stephen
    4
    Good Idea, I may actually do that.....
    2
    try not using wifi connection...for some reason i've had this problem before... Not sure whats going on...can you browse websites with your wifi?

    Stericson
    2
    Yes, there will be a tutorial I just finished the video showing it working...

    Will do the video in just a moment.

    Stericson
    1
    Hey, thanks for the tip. Turns out my torrents were hogging my bandwidth of my g router :( Installed fine, going to try a couple of things posted by djengizz.

    Thanks Stericsson

    Awesome, just applied a couple of things posted, worked flawlessly, really like the layout of the whole app. Awesome Job.
    I guess its true....Android has NO limits :)