[TOOL] Tickle My Android 9.0 - The Greatest Theming Tool In The World Returns!
The Worlds Famous Theming And Decompiling Tool, Tickle My Android, is back and better than ever before!!
TMA can pull apps from your phone or tablet, decompile them and recompile them. Even tricky apps like Sony's Xperia 'framework-res.apk'..
Which is cool, but it can also:
change the battery icon,
change the WiFi icon,
change the signal icon,
change the emoticons,
change the notification toggles,
change the softkeys,
change the pattern lock icons,
change the transparency of the statusbar (if the rom allows it),
unzip image files from apk files
zipalign apk files,
sign recompiled apk files in the same way as the original,
deodex apk and jar files,
resize and change boot animations,
create backup-generating flashable zip files,
create standard flashable zip files,
take screenshots of your device,
let you choose between which version of Apktool you want to use,
comes in Portuguese,
..and now can be controlled by keyboard or MOUSE!
To use Tickle My Android, you will need:
- a rooted Android phone or tablet with USB Debugging enabled and a recovery installed (either ClockworkMod or TWRP) ,
- any version of Android on that device,
- a Windows PC (XP or above) with the phone or tablet's drivers installed as well as Java Runtime Environment 2.0 minimum,
- a USB cable to connect your device to the PC,
- patience and a little common sense
Download the tool to the root of 'c:\' from the link at the bottom of this post and run it. 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.
The "_deodex", "_in", "_out" and "_working" 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 will hold your icons backups, boot animations and fonts. In here are your log files as well you might need those later.
And the "Tickle My Android" shortcut starts the tool. Click on that and away we go!
How To Decompile An Application
The very first thing you need to do is backup your device. If you don't know how to do this, it's worth finding out first before going any further. Tickle My Android lets you change the very workings of your device and if you don't know what you're doing, it's possible to get things wrong. If you haven't made a backup, you could lose everything.. And that would be bad.
Next, you need to install your resource apks.
No idea what this means? Files with the '.apk' extension are the actual Android app's and some apks contain information that TMA will need before it can decompile any others.
First choose select to go to the Theming Menu.
Next select the Pull Menu.
This gives you the option of pulling (copying from your Android device to the PC) one of the most commonly modified system files, or any other file you wish.
Pull and install 'framework-res.apk'. This is the most common resource apk. Depending on your device or rom, you may need to install others as well. You'll normally find these in your framework folder with "resources" or "res" in the filename, and I've listed the most common ones.
If in doubt, use the 'ADB Shell' option in the Title Menu and enter the command 'ls system/framework' to see what files you actually have in the framework folder.
IF YOU DON'T INSTALL ANY RESOURCE APKS, YOU WILL HAVE PROBLEMS LATER!!
Once you've installed the relevant resource apks, you'll need to decompile some apks. Which ones? Well, that's the tricky bit as it all depends on what sort of mod you want to do. If you're on Gingerbread (Android 2.3) or higher, the chances are you'll need to pull and decompile SystemUI.apk.
Once a file has been decompiled, have a look in the "_working" folder. You'll see a folder with the same name as that file, this contains all the various files (images, xml, smali, etc) that the file you pulled actually consists of. Now you can make all the changes you desire.
How To Recompile An Application
Once you've finished changing things, go back to the Theming Menu and select the Recompile Files option and put everything in that folder back into a single file.
You'll have the option to recompile with the original signature, new signature or no signature. For most mods you'll want to use the original signature.
Only use a new signature if you've changed the Android manifest. If you have no idea what that means, don't worry about it and just use the original signature.
This recompiled file will now be in the "_out" folder. From there you can push it back to the device.
How To Put A Recompiled Application Back On Your Device
This is where your recovery comes in. Select the Create Flashable Zip File option to create a flashable zip. There are two types available:
The 'Advanced Zip' uses the Universal Flashing Tool by JRsoft and Intronauta. This is a very handy tool and full credit goes to them. It can do a lot of clever things but the bit that I like most is that it creates a flashable backup of every file you've changed. Don't like what you've changed? Just flash the backup!
However, the advanced zips don't work with all versions and ports of every recovery program. If you find yourself faced with an error message saying that 'we need at least one sdcard mounted', the advanced zips aren't compatible with your recovery. That's where the 'Standard Zip' comes in. This doesn't generate a backup, it's just an ordinary flashable zip file.
Just select the option to use files from the "_out" folder. If you've recompiled 'framework-res.apk', put it into 'system/framework'. If you've recompiled 'SystemUI.apk', put it into 'system/app'. Any other files, make sure you took note of where they were pulled from.
Well..it's supposed to be. But if you're having trouble, here is an awesome video by Tomsgt123 on Youtube, showing you what to do.
It's for v5, but the general principles will apply to the later versions as well. Check it out!
What is Tickle My Android compatible with?
Tickle My Android's decompiler function always uses the very latest apktool files, as well as the very best aapt files, available. But, because Android is an open-source OS, there will always be some implementations of it that TMA will not be fully compatible with.
Currently, TMA is not fully compatible with some official MIUI rom's. This is because MIUI isn't open-source, unlike Android itself, and the developers aren't sharing how they construct their files.
TMA is also not fully compatible with HTC Sense 4.0+. This is because HTC have constructed their files in a different way to the Android norm and aren't letting people outside the company know how they did it.
As well as these, Tickle My Android isn't able to decompile a lot of Huawei apk's. Again, this is because Huawei have done things differently to the Android standard and they're not letting anybody know what they did.
If you can't decompile an apk and all you want to do is change some of the icons, you now have the option to 'Unzip Image Files'. This will take just the image files from an apk and put them into the '_working' folder.
Be aware that this option is for experienced themers only.
There will be some devices/roms that are unable to use the zip files TMA creates and you'll be given an 'error code:0'. This is down to the update-binary and can be easily fixed.
Take the update-binary from a working zip file and place it in the 'user_files\UPDATEBINARY' folder. Use the option in the settings menu and all future zips will use your update-binary. Easy!
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.
Version 9.0 - Introduced mouse control option, new icons, pattern lock icons added, code improvements
Version 8.1 - Introduced option to change apktool version, minor code tweaks, new battery icon
Version 8.0 - Complete rewrite of code making it faster and more efficient, new icons, improved zip file options, improved deodexing, option to unzip icons only from an apk, Android 4.4 (KitKat) compatibility, updated apktool to version 2.0.0b7 ensuring maximum compatibility with as many versions of Android as possible
Version 7.1 - Improved file preparing, additional icons, option added to set zip name, bugfixes
Version 7.0 - Multiple code changes, improved error checking, improved logging, updated presets, added option to set favourites
Version 6.1 - Enhanced zip menu, code improvements, new icons
Version 6.0 - Tool redesign, added softkeys to icon changing
Version 5.4 - Improved compatibility with modern devices, added French language option
Version 5.3 - Improved preparing process, added Portuguese option
Version 5.2 - Process tweaks
Version 5.1 - New apktool, bug fixes, improved file preparing algorithm
Version 5.0 Beta 04 - Code improvements
Version 5.0 Beta 03 - Bug fixes, new toggle icons, theming log
Version 5.0 Beta 02 - Latest apktool with Android 4.2 compatibility
Version 5.0 Beta 01 - Latest apktool, customised appt, significant UI changes, added toggles and emoticons to icon changing, removed pushing to phone, re-added statusbar transparency, added the Mini Menu, added option for changing the tool language (languages to follow)
Version 4.3 - Added apktool 1.5.0, minor bug fix
Version 4.2 - Added apktool 1.4.10, added option to make log files when decompiling or recompiling
Version 4.1 - Bug fixes, UI tweaks, added option to change boot animation size, major improvement to preparing file speed, increased Android compatibility, moved version number to credits screen
Version 4.0 - Added ZIP maker, UI and code changes to improve user friendliness, 2 new battery icons, added option to use own battery icons, latest apktool and aapt ensuring compatibility with nearly all Android devices, updated deodexing for ICS and JB, expanded quick file select, improved installation of resource files, better error handling
Version 3.0 - Added deodexing option, signal and wifi icon changing, code tweaks, UI overhaul, more battery icons
Version 2.2 - Improved battery icon adding, improved framework adding, improved error handling, UI changes, small code tweaks
Version 2.1 - Improved de- and recompiling of files, fixed "Enter 'x' To Cancel" bug, other slight tweaks
Yes, Tickle My Android is an absolutely incredible de/recompiler but did you know that you can also use it to change the icons on your phone or tablet?
TMA can change your battery icons, WiFi icons, signal icons, toggle icons, softkey icons, pattern lock icons and even your emoticons!!
And it's so incredibly easy..
This is how to change your battery icons (the process is very similar for the other icons):
First, start the tool and select the Theming Menu option
Then the Pull Files From Device option
Now pull, backup, decompile and install the relevant files
This is the tricky bit, to be honest. In most roms and Android versions, battery icons are stored in framework-res.apk and/or SystemUI.apk. But you may need to install certain resource files before you can decompile those.
If you're on a Sense(HTC)-based rom, you might need to decompile and install com.htc.resources.apk.
If you're on Touchwiz(Samsung), it could be that you need twframework-res.apk.
If it's LG, then it might be lge-res.apk.
It it's Motorola, then moto-res.apk and/or blur-res.apk.
If it's Sony, it could SemcGenericUxpRes.apk.
If you're on MIUI, maybe it's framework-miui.res.apk. Or it could be something else. Search your system/framework folder and make sure you pull and install every apk with "res" in the title.
Now, after all that, go back to the Theming Menu and choose the Change Battery Icons option.
As of right now, TMA comes with 77 different battery icons to choose from.
That's a lot.
That's so many in fact that I can't show them all in one post so, to help you choose between them, you'll find small previews of each one in the 'user_files\ICONS\BATTERY\_previews' folder.
The icons are fairly varied..
...so have a look and pick which one you like best
Or why not use your own? Tickle My Android can support up to 100 different icons in each category so you can easily add more. Just create a folder in the 'user_files\ICONS\BATTERY\' folder and fill it with your images and xml.
Please note, it is your responsibilty to make sure any images and xml you use will work. If your battery icon currently changes every 10% and you add enough images for a 1% icon, it will still change at every 10% unless you add some new xml files as well.
When you're done, run the tool and TMA will automatically add your icons to the ones you can choose from.
If you're really proud of your creation and you'll like it to be added to the icons that TMA comes with, just let me know!
Once you know which icon to use, select it and Tickle My Android will work out where it needs to put the relevant files and gets to work.
This is set up to cope with icons that change every 1%, 5%, 10%, whatever% so you don't need to worry about that. Please note that every battery icon will work on every device, but some may look better on higher resolutions.
Once the icons and animations have been added, go back to the Theming Menu and choose the Recompile Files option. You only need to recompile the files that Tickle My Android said it was adding battery files to.
Make sure you choose to recompile with the original signature. Otherwise your apk might not work!
Now go back to the Theming Menu and select the Create Flashable Zip File option to...create a flashable zip file.
You can create an 'advanced' zip or a 'standard' zip.
'Advanced' zips create a flashable backup on your sdcard which is very handy if you don't like the new icons you've come up with. These don't work on every recovery though so you might need to use the 'Standard' option instead.
If you've changed the battery files in 'framework-res.apk', or any other of your resource apps, you'll need to put that app into the 'system/framework' folder.
If you've changed the battery files in 'SystemUI.apk', that app needs to go into the 'system/app' folder
Zip files are created in the 'c:\temp' folder by default, but you can change that to whatever you wish.
Copy the zip over to your device (if TMA didn't put it there directly) and reboot into recovery
Flash the zip
Wait a little while for it to load the new info
The device reboots and...there's your shiny new battery icon!
And that's about it. If you don't like the icon, you can try another by repeating the above steps. Or you can make a flashable zip with your backed-up apk files to get back to normal.
Changing WiFi Icons, Signal Icons, Notification Toggles, Emoticons, Softkeys And Pattern-Lock Icons
You can also use the same process to change other icons on your device. There are a few slight differences but it's still the same idea.
All the icons can be found in the 'user_files\ICONS' folder. Some are designed to match certain battery icons, some are a little..odd, but all should work with your phone or tablet.
It's worth mentioning that different roms use icons in different ways. It's possible that the icons you've selected won't work quite the way you'd want. That's why it's so handy having a backup!
Try them out, see which one works for you and let me know how it goes!
As well as de/recompile apks and change icons, TMA can also deodex files. Now, this gets a little long-winded, but follow the instructions and you'll be fine.
Some Android rom's have been 'odexed'. What this means is that some of the system apps have been split in two, with part of the app going into an '.odex' file.
The benefits of this are debatable. It makes the initial boot faster but, because the apps are missing certain files, it can make theming and modding much harder.
And now, if your rom is odexed, you can do something about it. TMA can deodex your files...or even your entire rom.
For our example, we'll imagine that you've got an odexed 'framework-res.apk' on your device.
This means that in the same folder that framework-res.apk is in ('/system/framework/'), there'll also be a 'framework-res.odex' as well.
And that's what we want to get rid of.
First of all, ignore the Deodexing Menu for now and head to the Theming Menu instead
Use the theming menu to pull, backup and decompile framework-res.apk.
If you're not sure how to do this, have a look at the above two posts.
Then head back to the Deodexing Menu. We'll come back to the Theming Menu later
Select the Prepare Workspace option.
This is the longest part of the process so it's worth having a good book nearby.
Now use the Backup Odex Files to..er..backup the odex file you want to get rid of. This backup will be made in the 'user_files\BACKUP\files' folder.
Always, always, make a backup!!
Now select the Deodex Files to deodex your file.
Choose the file you want to deodex and let TMA do its thing.
Deodexing can take a little while. Don't worry, stuff is actually happening!
When the file is deodexed, a new folder called "framework-res.odex" will appear in the "_deodex\DeodexedFiles" folder.
This contains all the bits from the deodexed file. These are useless on their own so they need to be added to the respective apk file.
So now use the Add Deodexed File To Decompiled File In "_working" Folder option to add the deodexed file to your decompiled framework-res.apk.
Now you can make any changes you want to the decompiled framework-res.apk. When you're done, head back to the Theming Menu and recompile, prepare and flash it back to your device.
But don't exit your recovery just yet!
The original odex file, 'framework-res.odex' is still sitting on your device, which is going to cause problems.
So now you need to remove it. First you need to mount the /system partition so TMA can access your device while it's in recovery.
How to do this depends on the particular recovery program you're using but it should be pretty straight-forward.
Once that's done, go back to the Deodexing Menu and use the Delete Odex Files From Device to delete the file from the device.
Be sure you get the filename and location right.
If you delete the wrong file it may be gone forever and you might have to reflash the whole rom!
With the odex file gone from your system and a deodexed app taking the place of the odexed one, you may now unmount your partition and reboot your device.
It will take longer than normal to reboot. This is fine and to be expected.
It seems like a long, complicated process but it's not really.
You can even deodex your entire rom in one go if you want (and if you have the time). Just use the Deodex All Files option. Just bear in mind that you still have to pull and decompile the relevant apk's..
Just follow the steps and remember to BACKUP before you do anything!
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 I need to know some things first. And you need to do a few things for me as well.
First, fill in this form here:
What phone/tablet are you using?:
What version of Android are you running?:
What version of Tickle My Android are you running?:
What sort of rom are you on? (I need to know about OEM roms as well. That's things like Sense, Touchwiz, etc)
What are you trying to decompile/recompile?
What resources apps have you installed?
Are the files you're using odexed or deodexed?
What mod are you trying to do?
Do your files work if you decompile, recompile and prepare them without changing anything?
What problems are you having? (Give me some detail here, don't just say "It doesn't work.")
Please also copy and paste the log files for the files you're modding as well as the history.txt logfile. You'll find your logs in the "user_files\LOGS" folder.
It can take a lot of time, and a lot of posts, to track down what could be causing an error, so I will need this information before I can start to help you. The more information I have, the faster I can fix the issue.
Please be aware that I won't be able to help you without this information.
Q. TMA doesn't load! I just get an error saying that the 'shortcut cannot be found'!
A. This is most likely because you didn't install TMA in the root of your 'c:\' drive.
TMA will be looking for 'c:\TickleMyAndroid\tool_files\rewrite.bat'.
If you've installed anywhere else, the address won't be right.
If you're comfortable with editing shortcuts, you can have TMA anywhere. But it may be simpler just to put it in the root for now..
XDA Developers was founded by developers, for developers. It is now a valuable resource for people who want to make the most of their mobile devices, from customizing the look and feel to adding new functionality. Are you a developer?