[TOOL] Tickle My Android - Decompile & Recompile With Ease

Search This thread

22sl22

Senior Member
May 21, 2012
3,530
3,277
London
Interesting... I think I might need to do a bit of recoding.

Bearing in mind what I have going on over the next few days, I should be able to get this done by Monday/Tuesday. In the meantime, can anybody link me to an odexed Lollipop ROM? The biggest problem I have here is that I don't actually have an odexed Lollipop ROM on any of my devices to test this on. So any help would be much appreciated. :highfive:

What devices do you have?

For my device, the nexus 4 I created a stock flashable ROM based off factory images (5.1) which should be odexed right ?

Sent from my Nexus 4 using XDA mobile app
 
  • Like
Reactions: Ticklefish

Ticklefish

Recognized Themer
Oct 27, 2011
6,773
8,627
Hampshire, UK
What devices do you have?

For my device, the nexus 4 I created a stock flashable ROM based off factory images (5.1) which should be odexed right ?

Sent from my Nexus 4 using XDA mobile app

Xperia Z (no stock LP ROM yet) and Xperia Mini Pro (only a deodexed AOSP ROM)..

That ROM should be odexed, I would think. If so, I need the system/framework/, system/priv-app/ and system/app/ folders.
 

MaFiBoSS

Senior Member
Feb 24, 2010
126
50
404 not found
@MaFiBoSS Why not just use an already deodexed rom instead of fighting with deodexing files and causing yourself more headaches? Is 1 not available for your device? And if you are following guides on how to do something, chances are it has already been done which makes life easier for you as well.

Thebe@r'$ G@L@XY
Support TBO and the continuation of inverted and transparent apps and look as cool as your phone with a TBO t shirt- http://teespring.com/teamblackout

Eh eh eh eh, but this is the easiest way :D
I'm trying to create a apk file deodex.

Thanks for the advice. ;)

---------- Post added at 06:08 PM ---------- Previous post was at 05:52 PM ----------

Oh dear, it looks like I made a mistake in the code..

Code:
2-02-2015@1522 --- "_WorkArea1\_deodex\[COLOR="Red"]ActiveFilename[/COLOR]" not deodexed

That ActiveFilename is the name of a variable, you shouldn't be seeing it in the logs. That might not be helping. Can you try downloading TMA again (or even just the .EXE file from the OP), try deodexing again and share the new history.txt please?

Ok, I removed everything from my pc and download again the TMA.

1 - Extracted folder "TickleMyAndroid" from ".exe" file to "c:\";
2 - Installed the framework;
3 - Pull the file "SystemUI.apk" from my device to pc with the TMA;
4 - Created the backup and decompile the file "SystemUI.apk";
5 - Started to: Prepare Workspace and push all files from my device;
6 - I tried to backup the "SystemUI.odex.xz" file, without success;
7 - Selected the Deodex Files option and the file "SystemUI.odex.xz";
8 - And stop in the step: "7. Deodexing can take a little while". :(

History

Code:
Tickle My Android 10.3.2. Theming History

    tinyurl.com/ticklemyandroid

------------------------------------------------

2-02-2015@1716 --- SESSION STARTED 
2-02-2015@1716 --- WorkArea Set To "WorkArea1" 
2-02-2015@1716 --- Apktool Version Set To "apktool_2.0.0.jar" 

2-02-2015@1717 --- "_WorkArea1\_in\framework-res.apk" installed to PC 
 
I: Framework installed to: C:\Users\MaFi-BoSS\apktool\framework\1.apk
 
2-02-2015@1727 --- "/system/priv-app/SystemUI/SystemUI.apk" pulled to "WorkArea1" 
3626 KB/s (14163829 bytes in 3.814s)

2-02-2015@1728 --- "_WorkArea1\__SystemUI.apk__2-02-2015@1728" backup created 
2-02-2015@1728 --- "_WorkArea1\_in\SystemUI.apk" decompile succeeded, using "apktool_2.0.0.jar" 
 
I: Using Apktool 2.0.0 on SystemUI.apk
I: Loading resource table...
I: Decoding AndroidManifest.xml with resources...
I: Loading resource table from file: C:\Users\MaFi-BoSS\apktool\framework\1.apk
I: Regular manifest package...
I: Decoding file-resources...
I: Decoding values */* XMLs...
I: Copying assets and libs...
I: Copying unknown files...
I: Copying original files...
 
2-02-2015@1731 --- Files Pulled From "system/framework" To "WorkArea1\_deodex" 
2-02-2015@1732 --- Files Pulled From "system/framework" To "WorkArea1\_deodex\framework" 
2-02-2015@1732 --- Files Copied From "system\framework\arm\*.odex" To "WorkArea1\_deodex\OdexFiles" 
2-02-2015@1732 --- "boot.oat" Copied From "system\framework\arm\" To "WorkArea1\_deodex\OdexFiles" 
2-02-2015@1739 --- Files Possibly Not Pulled From "system/*app" "system/priv-app" To "WorkArea1\_deodex" 
2-02-2015@1739 --- Odex Files Copied To "WorkArea1\_deodex\Odexfiles" 
2-02-2015@1745 --- "_WorkArea1\_deodex\SystemUI.odex.xz" not deodexed

And I try deodexing the file, this files are created:



"C:\TickleMyAndroid\_WorkArea1\_deodex\DeodexedFiles" <------ empty.
 
Last edited:

carl1961

Senior Member
Dec 5, 2010
7,521
6,201
Tickfaw
Interesting... I think I might need to do a bit of recoding.

Bearing in mind what I have going on over the next few days, I should be able to get this done by Monday/Tuesday. In the meantime, can anybody link me to an odexed Lollipop ROM? The biggest problem I have here is that I don't actually have an odexed Lollipop ROM on any of my devices to test this on. So any help would be much appreciated. :highfive:

I see odex rom here

https://yadi.sk/d/LRRgntHndXZCQ

I would upload my framework/app and priv-app but it would take 8 hours with my slow upload speed
 

Thebear j koss

Senior Member
Eh eh eh eh, but this is the easiest way :D
I'm trying to create a apk file deodex.

Thanks for the advice. ;)

---------- Post added at 06:08 PM ---------- Previous post was at 05:52 PM ----------



Ok, I removed everything from my pc and download again the TMA.

1 - Extracted folder "TickleMyAndroid" from ".exe" file to "c:\";
2 - Installed the framework;
3 - Pull the file "SystemUI.apk" from my device to pc with the TMA;
4 - Created the backup and decompile the file "SystemUI.apk";
5 - Started to: Prepare Workspace and push all files from my device;
6 - I tried to backup the "SystemUI.odex.xz" file, without success;
7 - Selected the Deodex Files option and the file "SystemUI.odex.xz";
8 - And stop in the step: "7. Deodexing can take a little while". :(

History

Code:
Tickle My Android 10.3.2. Theming History

    tinyurl.com/ticklemyandroid

------------------------------------------------

2-02-2015@1716 --- SESSION STARTED 
2-02-2015@1716 --- WorkArea Set To "WorkArea1" 
2-02-2015@1716 --- Apktool Version Set To "apktool_2.0.0.jar" 

2-02-2015@1717 --- "_WorkArea1\_in\framework-res.apk" installed to PC 
 
I: Framework installed to: C:\Users\MaFi-BoSS\apktool\framework\1.apk
 
2-02-2015@1727 --- "/system/priv-app/SystemUI/SystemUI.apk" pulled to "WorkArea1" 
3626 KB/s (14163829 bytes in 3.814s)

2-02-2015@1728 --- "_WorkArea1\__SystemUI.apk__2-02-2015@1728" backup created 
2-02-2015@1728 --- "_WorkArea1\_in\SystemUI.apk" decompile succeeded, using "apktool_2.0.0.jar" 
 
I: Using Apktool 2.0.0 on SystemUI.apk
I: Loading resource table...
I: Decoding AndroidManifest.xml with resources...
I: Loading resource table from file: C:\Users\MaFi-BoSS\apktool\framework\1.apk
I: Regular manifest package...
I: Decoding file-resources...
I: Decoding values */* XMLs...
I: Copying assets and libs...
I: Copying unknown files...
I: Copying original files...
 
2-02-2015@1731 --- Files Pulled From "system/framework" To "WorkArea1\_deodex" 
2-02-2015@1732 --- Files Pulled From "system/framework" To "WorkArea1\_deodex\framework" 
2-02-2015@1732 --- Files Copied From "system\framework\arm\*.odex" To "WorkArea1\_deodex\OdexFiles" 
2-02-2015@1732 --- "boot.oat" Copied From "system\framework\arm\" To "WorkArea1\_deodex\OdexFiles" 
2-02-2015@1739 --- Files Possibly Not Pulled From "system/*app" "system/priv-app" To "WorkArea1\_deodex" 
2-02-2015@1739 --- Odex Files Copied To "WorkArea1\_deodex\Odexfiles" 
2-02-2015@1745 --- "_WorkArea1\_deodex\SystemUI.odex.xz" not deodexed

And I try deodexing the file, this files are created:



"C:\TickleMyAndroid\_WorkArea1\_deodex\DeodexedFiles" <------ empty.
Maybe I'm missing something, a deodex rom, the apk is already deodexed. No need for these extra steps. Just use the deodexed apk from a deodex rom and you are good to go. Just delete whatever app you are replacing along with any odex files and replace with the deodexed 1.

Thebe@r'$ G@L@XY
Support TBO and the continuation of inverted and transparent apps and look as cool as your phone with a TBO t shirt- http://teespring.com/teamblackout
 

MaFiBoSS

Senior Member
Feb 24, 2010
126
50
404 not found
Maybe I'm missing something, a deodex rom, the apk is already deodexed. No need for these extra steps. Just use the deodexed apk from a deodex rom and you are good to go. Just delete whatever app you are replacing along with any odex files and replace with the deodexed 1.

Thebe@r'$ G@L@XY
Support TBO and the continuation of inverted and transparent apps and look as cool as your phone with a TBO t shirt- http://teespring.com/teamblackout

No, I'm using a stock rom, see my signature. ;)

I found this topic and works.

I decompiled the "SystemUI.odex.xz" and have acess the folder I wanted, but after deodexed the apk, my UI system stopped. :(

(Moved arm folder and clean cache/dalvik/art)
 

Thebear j koss

Senior Member
No, I'm using a stock rom, see my signature. ;)

I found this topic and works.

I decompiled the "SystemUI.odex.xz" and have acess the folder I wanted, but after deodexed the apk, my UI system stopped. :(

(Moved arm folder and clean cache/dalvik/art)
Stock roms come deodexed. Switch to a deodexed rom and you will not have these issues.

Thebe@r'$ G@L@XY
Support TBO and the continuation of inverted and transparent apps and look as cool as your phone with a TBO t shirt- http://teespring.com/teamblackout
 

Ticklefish

Recognized Themer
Oct 27, 2011
6,773
8,627
Hampshire, UK
HAPPY BIRTHDAY TMA!!

Today marks the third birthday for Tickle My Android.

Three years.

I started this thread three years ago.

Wow....where did the time go?!

Since I decided to share this little batch file of mine, I've seen TMA downloaded by thousands of people across the globe, translated into several different languages and featured on several different websites. The code, meanwhile, has increased from a mere 1,814 lines to 12,863!

I'm still amazed that this tool is still going and I want to thank everybody who's downloaded, supported and contributed over the years. It's you lot that make this the Greatest Android Theming Tool...EVER!! :highfive:

To mark the occasion, and to say thanks, I thought I'd share something rather special..

Not long after the release of version 9, I thought I'd do something different with for the next release. I'd learnt a lot over the years about how to write batch files so it felt like it was time to change TMA from the standard menu layout and make something truly special.
I then spent the next few months working on TICKLE MY ANDROID X..

HqrCpMT.png

TMAX took a a very long time to design and an even longer time to code. Batch files are just not meant to do the things that this tool could do. This code caused me a lot of headaches!

Then, towards the end of last year, I'd finally gotten the tool to the point where it could decompile, recompile and everything else in the Theming Menu just as well as TMA. That's when I realised the problem.

TMAX looked amazing and I was having a lot of fun working out how to get it do what I wanted to do but, when it came to theming Android, TMA was faster, simpler, more efficient and, basically, better to use!!
Which was the whole point behind it. Tickle My Android is a theming tool, not a programming exercise.

So I stopped development on Tickle My Android X and started work on putting some of the code into Tickle My Android 10. Hopefully, you'll agree that version 10 is the best yet.

If you'd like to see what the future of this awesome program nearly looked like, you can download the final beta of Tickle My Android X from here: http://www.mediafire.com/download/l3mailj2fy58he8/TickleMyAndroidX_v0.8.4.exe

(Special thanks go to the Elite Beta Testers who helped me put this together. :D )

Let me know what you think, thank you for supporting Tickle My Android and here's to another 3 years!
 
Last edited:

22sl22

Senior Member
May 21, 2012
3,530
3,277
London
HAPPY BIRTHDAY TMA!!

New update is great as usual, thanks :)

Been using TMA since V6, the reason why I know this is because that's when I started doing mods and things and iv'e always used the same zip template that says v6 (Always been too lazy to change it :) ) and it's never let me down. Not just in terms of flashable zips but everything else in TMA has always been a huge help so here's to another 3 years, and another 3 after that :good:

edit: @Ticklefish

Only read your comment now, if you still need stock odexed system/framework/, system/priv-app/ and system/app/ let me know and i'll upload those folders. Not sure what use they will be for you though since you don't have a nexus 4 :good:
 
Last edited:
  • Like
Reactions: Ticklefish

stanlin salu

Senior Member
Apr 12, 2012
1,849
2,221
New Delhi
This is great tool...
I am truely amazed to see that you still support this tool, most of the devs just stop the support after a while...
Thanks for your works towards this community bro :)
 
  • Like
Reactions: Ticklefish

MaFiBoSS

Senior Member
Feb 24, 2010
126
50
404 not found
Stock roms come deodexed. Switch to a deodexed rom and you will not have these issues.

Thebe@r'$ G@L@XY
Support TBO and the continuation of inverted and transparent apps and look as cool as your phone with a TBO t shirt- http://teespring.com/teamblackout

Maybe that's what you meant: Stock ROM --> odexed? :D

---------- Post added at 12:10 PM ---------- Previous post was at 12:08 PM ----------

HAPPY BIRTHDAY TMA!!

Thanks for this tool and I hope that you continue with the good work. ;)
 

Thebear j koss

Senior Member
Maybe that's what you meant: Stock ROM --> odexed? :D

---------- Post added at 12:10 PM ---------- Previous post was at 12:08 PM ----------



Thanks for this tool and I hope that you continue with the good work. ;)
Nope. Stock rom deodexed. Not all stock roms are Odexed. Most these days come either way. I am suggesting you flash a stock deodexed rom to make modding easier for yourself.

Thebe@r'$ G@L@XY
Support TBO and the continuation of inverted and transparent apps and look as cool as your phone with a TBO t shirt- http://teespring.com/teamblackout
 
  • Like
Reactions: Dzepar and MaFiBoSS

MaFiBoSS

Senior Member
Feb 24, 2010
126
50
404 not found
Nope. Stock rom deodexed. Not all stock roms are Odexed. Most these days come either way. I am suggesting you flash a stock deodexed rom to make modding easier for yourself.

Thebe@r'$ G@L@XY
Support TBO and the continuation of inverted and transparent apps and look as cool as your phone with a TBO t shirt- http://teespring.com/teamblackout

Ok, but the roms of Samsung, I think come odexed, because I always found the .odex files (SG4). :)

I'll try to make my Stock ROM in ROM deodexed. :p

Thanks for answering. ;)
 

Thebear j koss

Senior Member
Ok, but the roms of Samsung, I think come odexed, because I always found the .odex files (SG4). :)

I'll try to make my Stock ROM in ROM deodexed. [emoji14]

Thanks for answering. ;)
Nope. Samsung comes both ways. I am using a stock deodexed Samsung rom right now. You are on the s4? For which carrier I will post a stock deodexed rom thread for you. I am 100% sure there is already 1 available.

Thebe@r'$ G@L@XY
Support TBO and the continuation of inverted and transparent apps and look as cool as your phone with a TBO t shirt- http://teespring.com/teamblackout
 
  • Like
Reactions: Dzepar and MaFiBoSS

MaFiBoSS

Senior Member
Feb 24, 2010
126
50
404 not found
Nope. Samsung comes both ways. I am using a stock deodexed Samsung rom right now. You are on the s4? For which carrier I will post a stock deodexed rom thread for you. I am 100% sure there is already 1 available.

Thebe@r'$ G@L@XY
Support TBO and the continuation of inverted and transparent apps and look as cool as your phone with a TBO t shirt- http://teespring.com/teamblackout

Right now, I am testing the Stock ROM from Germany and my device is unlocked.

Thanks :)
 

Thebear j koss

Senior Member
Right now, I am testing the Stock ROM from Germany and my device is unlocked.

Thanks :)
Do they have an international s4 forum here on xda? Those Sam mobile builds are what devs use to build stock roms off of. Do you have custom recovery or are you using Odin to flash rom and firmware?

Thebe@r'$ G@L@XY
Support TBO and the continuation of inverted and transparent apps and look as cool as your phone with a TBO t shirt- http://teespring.com/teamblackout

---------- Post added at 09:24 AM ---------- Previous post was at 08:55 AM ----------

Right now, I am testing the Stock ROM from Germany and my device is unlocked.

Thanks :)
http://xdaforums.com/showthread.php?t=3027063
Stock deodex rom built off the German leaked lollipop firmware with international variants. [emoji106]

Thebe@r'$ G@L@XY
Support TBO and the continuation of inverted and transparent apps and look as cool as your phone with a TBO t shirt- http://teespring.com/teamblackout
 
  • Like
Reactions: Dzepar and MaFiBoSS

MaFiBoSS

Senior Member
Feb 24, 2010
126
50
404 not found
Do they have an international s4 forum here on xda? Those Sam mobile builds are what devs use to build stock roms off of. Do you have custom recovery or are you using Odin to flash rom and firmware?

Thebe@r'$ G@L@XY
Support TBO and the continuation of inverted and transparent apps and look as cool as your phone with a TBO t shirt- http://teespring.com/teamblackout

---------- Post added at 09:24 AM ---------- Previous post was at 08:55 AM ----------


http://xdaforums.com/showthread.php?t=3027063
Stock deodex rom built off the German leaked lollipop firmware with international variants. [emoji106]

Thebe@r'$ G@L@XY
Support TBO and the continuation of inverted and transparent apps and look as cool as your phone with a TBO t shirt- http://teespring.com/teamblackout

Normally i use the odin to flash stock rom. For the recovery I use the CWM philz. :)

Thanks for thread, but I had seen and don't like many modifications. :p

I will look for the best way to deodex the stock ROM. :cool:
 
Hello
I have been using this TMA and its great and there is an option signing with original signature, and whatever modifications in system app, i sign it with original signature,and it works,only problem i get is this does not work with framework-res,if i only edit a hex value,and sign it with original signature,i will get a boot-loop,so what am i doing wrong,and does copying the META-INF and android.manifest is same as Signing with original signature,so should i try copying these 2 files after recompilation of framework-res.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 714
    zWufrCv.gif


    Tickle​ My Android - Over Seven Years Old And Still Going Strong!

    Download version 16.5 from here: https://www.androidfilehost.com/?fid=4349826312261743827

    Click The Box Below For The Changelog:
    Version 16.5 - Fixed apktool 1.5.2. usage, new future-proof option for reusing original signature
    Version 16.4 - Extra decompiling option, colour options available Version 16.3 - Apktool 2.4.1, new decompiling option, decompile then recompile option added
    Version 16.2 - Bug fixes, AOSP framework integration, Java help integration
    Version 16.1 - Bug fixes
    Version 16.0.0.1 - Complete rewrite and redesign with emphasis on speed, efficiency and ease-of-use

    Click The Box Below To See The Credits:
    (All The People I Have To Thank)
    Big thanks go to these people, without their hard work none of this would be possible:
    @Brut.all, @iBotPeaches, @scrosler and @JesusFreke.
    I actually have a lot more people to thank than that.
    So many, in fact, that it now crashes the website if I try to list them all!
    So thank you so much to everybody who's helped over the years. You're all amazing people!

    Click Here For Frequently Asked Questions And Help


    TMA is a quick, powerful and easy-to-use tool that uses a piece of java called "apktool" to decompile and recompile Android app's.

    Along with that, Tickle My Android offers the ability to:

    • decompile and recompile multiple files in a batch,
    • sign APK and JAR files
    • zipalign APK files,
    • create flashable ZIP files,
    • let you choose between multiple versions of Apktool
    • lets you theme up to eight different roms or devices at the same time,
    • use the tool in different languages
    • control the tool by keyboard or MOUSE!
    UjezkPM.jpg


    To use Tickle My Android, you will need:

    • - a rooted Android phone or tablet with USB Debugging enabled and a custom recovery installed,
    • - any version of Android on that device,
    • - a Windows PC (XP or above) with the phone or tablet's drivers installed,
    • - Java Runtime Environment 8.0 or above installed to your PATH (http:​//www.​java.​com/en/download/help/path.​xml​),
    • - a USB cable to connect your device to the PC,
    • - patience and a little common sense
    If you're running Android 4.3 or above, you'll also need to give USB Debugging permission on your phone when this sort of message pops up on the screen:

    kVzkac0.png


    (Thanks to @carl1961​ for the picture)

    Download the latest version from the link at the top of this post and run it. (Please don't look in the 'Downloads' tab - it's not working right now.) This is a self-extracting archive which, once it's extracted everything, will put on your PC a new folder called "Tickle My Android". This is where the tool runs from.

    pIzCZ9F.png


    The "_WorkArea1", "_WorkArea2", "_WorkArea3", "_WorkArea4", "_WorkArea5", "_WorkArea6", "_WorkArea7" and "_WorkArea8" folders we'll talk about later.
    The "tool_files" folder contains various files Tickle My Android needs to run. Don't touch these!
    The "user_files" folder holds different versions of Apktool, as well as the different language files.

    And the "Tickle My Android" exe file starts the tool. Double click on that and away we go!

    How To De/recompile An App

    If you want to know about decompiling and recompiling APK and JAR files, take a look at the second post in this thread. There's a lot to talk about!


    How To Add An Application To A Flashable ZIP

    Head to the third post in this thread to find out how to add APK and JAR files to a flashable ZIP!


    What Happens If It Goes Wrong?

    Tickle My Android has been designed to be easy to use but the very nature of Android means that things might not always go smoothly.

    If you're having problems, look at the 4th post in this thread: http:​//forum.​xda-developers.​com/showpost.​php?p=​25621684&postcount=​4​ This is the FAQ post which should hopefully be able to help you out.

    If you're still having trouble, please feel free to post in here. Include your "history.txt" and I'll try to get to back to you as soon as I can!

    How To Say "Thanks"..

    TMA is free and always will be. You can use it as much as you like, you don't owe me anything.

    But, if you want to give something back, please consider placing one of the banners below somewhere in your signature.

    Your support lets me know I'm doing something useful and it keeps this tool alive!! Spread the word!

    BHeOSjr.gif


    F0pv2Mm.gif


    2aB1bsC.gif



    XDA:DevDB Information
    [TOOL] Tickle My Android - Decompile & Recompile With Ease, Tool/Utility for the Android General

    Contributors
    Ticklefish

    Version Information
    Status: Stable
    Current Stable Version: 16.3
    Stable Release Date: 2019-11-30

    Created 2018-11-30
    Last Updated 2019-12-03


    XDA:DevDB Information
    [TOOL] Tickle My Android - Decompile & Recompile With Ease, Tool/Utility for the Android General

    Contributors
    Ticklefish

    Version Information
    Status: Stable
    Current Stable Version: 16.5
    Stable Release Date: 2020-03-12

    Created 2018-11-30
    Last Updated 2020-03-12
    191
    How To De/recompile An App​​

    Decompiling and recompiling an Android app for the first time can seem quite complicated and time-consuming, but it really isn't once you know what you're doing.

    First you'll need to choose which WorkArea you want to use. There are eight WorkAreas in total, which means you can easily work on up to eight different rom's or devices without having to reset the tool everytime you want to change from one to the other.

    Inside each WorkArea are five folders. The '_in' folder is where files about to be decompiled go, the '_working' folder contains the results of that decompiling and the '_out' folder contains the recompiled files. There's also a "Frameworks" folder, which will contain the framework files you've installed. You can pretty much ignore that last one most of the time.

    F4Zywlz.jpg


    (When you first use TMA,​ you'll be in WorkArea 1 by default.)

    To decompile an app, you'll first need to put the relevant APK in the "_in" folder. You can either copy this into the folder yourself or you can 'pull' it from your Android device. If you want to pull the file, this next section is for you. If you don't, skip ahead to the one after that.

    How To Pull A File​​

    First select the "Pull File From Device" option.

    gwr61eZ.jpg


    This gives you the option of pulling some of the most commonly modified system apps, or any other file you wish.

    Choose which file you want to pull and the tool will try to do that for you. If the pull fails, it could be that you don't have the adb drivers installed on your PC for your particular device, or the file doesn't exist, or any one of a number of things. Have a look in the "history.txt" file that's automatically generated to see what's going on.

    That's actually all we need to know about pulling - it's really not that complicated. Once you've pulled all the files you need, you can move on to decompiling them. But you might need to install your frameworks first..

    How To Install Framework Files​​

    If you want to modify a system app (like SystemUI.apk or framework.jar) you'll need to install the right framework files. These are files that contain resources that are shared amongst most of the system apps. Those resources need to be made accessible to apktool (the program that does the actual decompiling) or the app won't decompile fully and it won't work.

    There are many framework files available. Stock Android only comes with one (so far) and it's called "framework-res.apk". OEM's like to include their own, though, just to make life more interesting. Samsung used to have "twframework-res.apk" in their rom's before replacing it with "samsung-framework-res.apk". Framework files are found in "system/framework" on your devices internal memory and should be an APK file with "res" in the filename. You need to make sure you install every framework file in your rom to ensure a system app decompiles, so make sure they all are put in the "_in" folder.

    Select the "Install Framework File" option and choose whether you want to install all the framework files in your WorkArea or some individual ones. You can select up to five individual files to install in one go.

    GJ1Lj72.jpg


    If the tool isn't able to install the files you'll be shown an error, otherwise you'll go back to the install menu. If you've installed all the framework files you need to, go back to the title menu because we're finally ready to do some decompiling!

    How To Decompile A File​​

    Select the "Decompile File" option and choose whether you want to decompile all the files in the "_in" folder or individual ones.

    aZjvlEg.jpg


    Once you've chosen your files, you'll be asked whether you want to decompile with "Standard" or "Advanced" settings. This is new to Version 16 of Tickle My Android. Apktool has a lot of different options when it comes to decompiling and you can now choose which ones you want to use. The standard settings will just make the tool try to decompile the entire file, as it used to in previous versions. The advanced settings let you control the process a little better..

    wG4iPVA.jpg


    These are the main decompile options available for the latest version of apktool available at time of writing (2.4.0.). Full explanations of each are available on the apktool github here: https://ibotpeaches.github.io/Apktool/documentation/#decode. To give you an idea though, you can use "Don't Decode DEX Files" if you don't want to modify any smali files, which makes the decompile a lot faster!

    Choose your options and the tool will try to decompile your file for you. If it succeeds the decompiled files will be in the "_working" folder, if not you'll get an error message. The full details of that error will be in the "history.txt" file.

    Once your app is decompiled you will be free to modify it however you like. Change images, alter layouts, add functionality..whatever you want to do. When you're done, you'll need to recompile your app to be able to use it again.

    How To Recompile A File​​

    Select the "Recompile File" option and choose whether you want to recompile all the files in the "_working" folder or individual ones.

    eGCpZA2.jpg


    Once you've chosen your files, you'll again be asked if you want to recompile with standard or advanced settings.

    jWTBDZO.jpg


    You can find explanations of the first few options on the apktool github again: https://ibotpeaches.github.io/Apktool/documentation/#rebuild. It is very important to know what the options that you've selected but there are two that's worth paying extra attention to..

    "Copy Original "AndroidManifest.xml" And "META-INF" Folder" - Modified system apps need to be signed with the same 'key' as the original app, or they won't run. This option ensures that the original key is used on the new app. If you want to change the Manifest file, though, you'll need a different key which involves disabling signature verification. That's a bit more complicated than this tool allows for..

    "Use "aapt2" [apktool_2.3.2+]" - More recent apps can be constructed with a newer version of a tool called aapt. If you're trying to modify a file made with the newer version, you'll need to have this option actve for the recompile to work. There's no easy way to tell if this is needed or not so, if you get an error, try again with the option turned off.

    (Different versions of apktool will have different options. Selecting an option that isn't available on the version of apktool you're using will cause an error.)

    There are also options to sign and zipalign your recompiled apps. Signing uses a generic key and zipaligning can sometimes break V2 signature checks so, if you've no idea what that all means, it's best to leave these options alone until you know you need them.

    And TMA has an option to put your recompiled apps into a ZIP file that you can flash in a custom recovery. I'll go into this in more detail in the next post but I always recommend replacing system apps this way. It's much safer than trying to replace them while the phone is running.

    Choose your settings and sit back while the tool does its thing.

    Once it's finished you'll get a message saying the file recompiled...or one saying it didn't. If it didn't, you can find the full error text in history.txt.

    9MFPZcY.jpg


    If your file recompiled, you'll find it in the "_out" folder. It's now ready to go back to your phone.

    It's up to you how you do that but the route I always recommend above all others is using a flashable ZIP file. Check out the next post if you want to know more!
    128
    How To Create A Flashable ZIP File​​

    Once you've got a recompiled app, you need to put back to your phone. If you've modified a system app, I always suggest using a flashable ZIP file in recovery. That way you're replacing part of the system, while the system isn't running. Using a file manager app, or using adb, is asking for trouble. I've broken a tablet that way and nearly a phone as well.

    Tickle My Android can create that flashable ZIP for you and it's really easy to do so. You can either tell the tool to do it as soon as the app's recompiled, or use the dedicated option on the title screen.

    UjezkPM.jpg


    To start, select the "Create Flashable ZIP File" option from the title screen. You'll then be asked if you want to use files from the "_in" folder or "_out" folder. This can be handy if you want to make a flashable ZIP of the unmodified apps. I normally have at least one of those containing my original SystemUI.apk just in case a mod goes wrong.

    Next you'll be asked to choose your files. You can add up to five files to the flashable ZIP. Once you've confirmed which file, or files, you want to use you'll be asked where those files are going in the ZIP.

    GTU8KTS.jpg


    Make sure your apps go back to the right folder. If you put a modified framework-res.apk in the "system/app/" folder, for instance, those modifications won't be actioned.

    Once you've chosen where the files are going, you'll next be asked what filename you want the ZIP file to have. TMA will automatically generate one for you based on the current date and time, but you can have whatever filename you want. Make sure not to use too many special characters or it could confuse the tool and/or the recovery. If you want to use the default filename, just press ENTER.

    G5CBBKi.jpg


    The tool will now ask you to confirm all the details.

    xNsZKe6.jpg


    If you're happy, then the ZIP will be made and placed in the same folder as the tool.

    E5GrJNB.jpg


    Copy this to your phone, flash it in reoovery and enjoy! But always, always, always make sure you have a backup first!!
    105
    F.A.Q.​


    Having trouble using Tickle My Android?
    Something not making sense?
    Something not working the way it should?
    Read on..

    Q. I can't de/recompile something!

    A. With Android being open-source, more and more companies and developers are putting their own spin on the OS and it's not unusual to find that something won't compile even when there's no obvious reason why it should.

    I can help..but you need to do something for me first.

    In the tool's folder, you'll find a file called 'history.txt'.

    Share that file with me and let me know a little bit about what's going wrong.

    That should give me enough information that I will be able to fix your problem. :)

    Please be aware that I won't be able to help you without this information.

    Q. I'm getting a 'Java Not Installed" error...but I do have Java installed!!

    fioJPbK.png


    A. You may have Java installed...but you probably don't have it in your PATH.

    TMA is a batch file, which runs in a command-line environment. If you don't have Java in your PATH, the tool won't be able to access it and won't be able to do any decompiling or recompiling at all.

    Adding Java to your PATH is actually a lot easier than it seems. Have a look at the official guide here: [url]http://www.java.com/en/download/help/path.xml[/URL]

    attachment.php
    attachment.php


    (Big thanks to @carl1961 for the pictures!)
    28
    I started this thread on the 3rd of May 2012.

    That's 5 years ago.

    And that's really shocking. Where have all the years gone??

    To mark the occasion, I just wanted to say a big THANK YOU to everybody who's downloaded TMA, helped with debugging and new features, and all the wonderful people who post on here. I know there are other decompiling and deodexing tools out there. Your support means a lot to me, it really does.

    TMA is still going. I'm not working on a new version yet, not until Android O means I have to change things yet again, or until I come up with a new feature. But this tool and this thread are still very much live. And everybody who's reading it and this post are automatically the greatest people ever!