FORUMS
Remove All Ads from XDA

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

6,661 posts
Thanks Meter: 8,474
 
By Ticklefish, Recognized Themer on 3rd May 2012, 04:15 PM
Post Reply Email Thread
Announcement from Ticklefish: Version 16.1 Now Available!
2nd July 2016, 01:03 PM |#5371  
Rx8Driver's Avatar
Senior Member
Flag Williamsport
Thanks Meter: 1,275
 
Donate to Me
More
Quote:
Originally Posted by Ticklefish

Stock Android only has one framework file and that's framework-res.apk. It's 3rd party roms that can have more. Sony has 2, Motorola has been known to have three before now, and Samsung has two as well.


You've been corrupted by your time with Touchwiz, my friend..

Lololol

Sent from my SM-N920T using Tapatalk
2nd July 2016, 01:05 PM |#5372  
Dovanchuc7521's Avatar
Senior Member
Flag Hung Yen
Thanks Meter: 90
 
Donate to Me
More
Quote:
Originally Posted by Ticklefish



Welcome To...







The World Famous Theming And Decompiling Tool, Tickle​ My Android, is now even better than ever before!!

Click Here To Find Out How To Change Your Icons
Click Here To Find Out How To Deodex Your ROM
Click Here To Find For Frequently Asked Questions And Help

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 lockring icons,
  • decompile and recompile multiple files in a batch,
  • 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,
  • odex apk and jar files,
  • resize and change boot animations,
  • change fonts,
  • 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,
  • lets you theme up to three different roms or devices at the same time,
  • can generate logcat files,
  • comes in Portuguese, Hungarian, Italian, French, Polish, Bahasa Indonesia and now Spanish!!
  • ..and 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,
  • - 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:



(Thanks to @carl1961​ for the picture)

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 "_WorkArea1", "_WorkArea2", "_WorkArea3", "_WorkArea4", "_WorkArea5", "_WorkArea6" 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" exe file starts the tool. Double 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.

Those apks are known as "resource" or, sometimes, "framework" files. The most common resource file is "framework-res.apk" but there are others.

First pick your WorkArea.

This is new to Tickle My Android. You can now work on up to six different rom's or devices without having to reset the tool everytime you want to change from one to the other.
Each WorkArea is completely separate from the others and you can easily change which one you're using in the Settings Menu.

Inside each WorkArea are four folders. The '_deodex' folder is used for deodexing files (this is covered in the next few posts), 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.



For now though, you can actually ignore all this. When you first use TMA,​ you'll be in WorkArea 1 by default and we'll cover the other folders later.

So, to begin decompiling your application, 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 "_WorkArea1\_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 "_WorkArea1\_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' and 'Advanced Zip [Android 4.1+]' use the Universal Flashing Tool by JRsoft and Intronauta. This is an absolutely incredible tool and full credit goes to them.
These zips can do a lot of cool things but the bit that I like most is that they create 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.

Simple, no?

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 always be some implementations of it that TMA​ will not be fully compatible with. Here are the current offenders that we know about:


  • MIUI apk files are often constructed in a different way to the Google standard..and MIUI aren't sharing how they're made.
    Which means apktool might struggle to decompile those apk files.


  • Apktool also struggles to decompile files from HTC Sense v4.0+ for exactly the same reason.


  • And apktool has trouble with Huawei's apks as well.


  • Samsung make some amazing phones and tablets and they deserve to be one of the big Android OEM names. However..they don't like Android very much. It's no secret that Samsung want to get away from Google and use their own software. Until they get to that stage though, they seem determined to make their Android rom's as non-stock as possible.
    And one of the ways they do this is by having different filenames and even different formats for their image files. As far as I can, I've tried to keep TMA​ compatible with all of the different Samsung variations but there's always a chance that you won't be able to automatically change the icons on some Samsung rom's.
It is very frustrating that some companies take an open-source OS and use it to make a closed-source rom. Especially in the case of MIUI, which is a rom that can only be used by people who've hacked their phone.

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.

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.

Have a look at the 4th post in this thread.

http:​//forum.​xda-developers.​com/s...tcount=​4​

This is the FAQ post which should hopefully be able to help you out.

And it tells you how to ask for help if you can't find the answer.





Download​ Links

Download the latest, 'pure' version of Tickle My Android from here:

http://www.mediafire.com/download/23..._-_v13.4.0.exe

Want to change your ROM's icons? Then download TMA​ from above and the latest Icon Pack from here:

http://www.mediafire.com/download/wm...k+5.0.0.exe​

Want to change your font? Then download TMA​ from above and the latest Font Pack from here:


http://www.mediafire.com/download/7u...Pack_2.0.0.exe

What if you want to change your boot animation? Then download TMA​ from above and the latest Boot Animation Pack from here:

http://www.mediafire.com/download/3t...Pack_3.0.0.exe

If you're downloading any Packs, please extract them to the same address as the Tickle My Android folder. So, if TMA​ is in "c:\temp\", extract the Packs to "c:\" as well!!

(Please remove any existing versions of Tickle My Android from your PC before installing, to avoid any conflicts)



Changelog:​

[COLOR=#808080]Version 13.30 - Marshmallow Deodexing, Marshmallow Xperia Sqsh Processing/COLOR]

Version 13.2.0 - Dalvik Cache Wiping Options Available In Advanced ZIP

Version 13.1.0 - Improved Icon Changing, Greater Flexibility In Selecting apktool Versions, Two New apktool Versions, Updated Indonesia Strings

Version 13.0.0 - Batch Decompiling And Recompiling, Small Code Changes

Version 12.0.1 - Spanish Language, New apktool, New Smali, New Baksmali, New oat2dex

Version 12.0.0 - Completely Rewritten Deodexing Menu, Verbose Option Added, Theming Menu Layout Changes, Improved History Logging, Apktool 2.0.2., New Versions Of adb, aapt, smali, baksmali, oat2dex

Version 11.1.1 - Deodexing Improvements, 'Dirty' Apktool

Version 11.1.0 - Removed Quick Menu Option, Fixed Boot Animation Resizing, New Theming Menu Layout

Version 11.0.0 - New Quick Menu Option, Corrected Thinking Display, Experimental APKTool, Minor Fixes

Version 10.4.4 - Small Bug Fixes

Version 10.4.3 - Minor Update With Improved Logging And Corrected APK Install Feedback

Version 10.4.2 - Improved History Logging

Version 10.4.1 - Improved Icon Changing

Version 10.4 - Improved Lollipop Deodexing

Version 10.3 - Added ability to generate logcat files

Version 10.2 - Improved Lollipop deodexing, bug fixes

Version 10.1 - Extra theming menu options

Version 10 - Bug fixes, code improvements, recompile then decompile option added, significantly faster dynamic file selection

Version 9.2.6 - Improved App Signing!

Version 9.2.5 - Lollipop deodexing fixed!

Version 9.2.3 - Partial Lollipop deodexing available!

Version 9.2.2 - Lollipop Compatibility!!

Version 9.2 - WorkAreas increased to 6, odexing option added, new build of apktool added

Version 9.1.1 - Improved logging, de/recompiling error reporting, fixed deodexing, new icons

Version 9.1 - Multiple bug fixes and code improvements, new icons, lockring icons added, improved logging, option to install all files, Work Areas created, tool icon changes

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



Want to help promote the World's Greatest Android Theming Tool?

Please consider placing one of these banners somewhere in your signature:







Your support keeps this tool alive! Spread the word!!

************************​************


Big thanks are owed to:
  • @Brut.all and [MENTION=​3924617]iBotPeaches​ for making Apktool,
  • [MENTION=​2794524]shivenjuneja​ for introducing me to the wonderful world of Android modding,
  • [mention=​426561]scrosler​ for inspiring Tickle My Android,
  • [mention=​2195216]itiskonrad.​ [MENTION=​386804]kalagas,​ @tr.slate, [MENTION=​2022018]patmorris,​ [MENTION=​4868820]OlliG,​ [MENTION=​4333195]vegeta1,​ [MENTION=​4286807]xIC-MACIx​ and [MENTION=​2138693]raubkatze​ for kindly sharing their icons,
  • [mention=​5057272]Typhus_,​ [MENTION=​4863176]szunyi77,​ [MENTION=​4882208]Glad!ator,​ [MENTION=​4864202]devadip,​ [MENTION=​6150503]pamk22​ and [MENTION=​5539344]FunSucker​ for spending their spare time translating,
  • [MENTION=​4868820]OlliG​ and [MENTION=​3271517]carl1961​ for help with icon screenshots
  • [mention=​4768534]Madaditya​ for beta-testing and forum help
  • [mention=​5232866]pxlcrnch​ for the new logo
  • and all the other wonderful people who made all this possible!

Microsoft virus alert, why? why? And it not run??
2nd July 2016, 01:06 PM |#5373  
Rx8Driver's Avatar
Senior Member
Flag Williamsport
Thanks Meter: 1,275
 
Donate to Me
More
Quote:
Originally Posted by Dovanchuc7521

Microsoft virus alert, why? why?

Because adb gets mistaken for a virus smh

Sent from my SM-N920T using Tapatalk
The Following User Says Thank You to Rx8Driver For This Useful Post: [ View ] Gift Rx8Driver Ad-Free
2nd July 2016, 01:40 PM |#5374  
Quote:
Originally Posted by Dovanchuc7521

Microsoft virus alert, why? why? And it not run??


Hiya, welcome to xda!


Can you do me a favour? Please edit your post so you're not quoting the entire OP (Original Post). It's one of the unofficial rules of the forum as it makes things much easier to read. Thanks!

Quote:
Originally Posted by Rx8Driver

Because adb gets mistaken for a virus smh

Sent from my SM-N920T using Tapatalk


Yup. It's something to do with adb accessing other devices (like your phone, tablet, etc). Some antivirus programs think it must be malware.
The Following User Says Thank You to Ticklefish For This Useful Post: [ View ] Gift Ticklefish Ad-Free
3rd July 2016, 03:30 PM |#5375  
tim241's Avatar
Senior Member
Flag Heerlen
Thanks Meter: 67
 
More
why did you programmed this in batch?
The Following User Says Thank You to tim241 For This Useful Post: [ View ] Gift tim241 Ad-Free
3rd July 2016, 03:47 PM |#5376  
Quote:
Originally Posted by tim241

why did you programmed this in batch?


That's how it started. This used to be just a short batch file to help me pull and decompile certain files from my phone. I was always decompiling the same files so I wrote a batch file to save typing the same instructions over and over again.


Then I got a bit carried away and made it a bit more complex...lol
The Following User Says Thank You to Ticklefish For This Useful Post: [ View ] Gift Ticklefish Ad-Free
3rd July 2016, 03:54 PM |#5377  
tim241's Avatar
Senior Member
Flag Heerlen
Thanks Meter: 67
 
More
Quote:
Originally Posted by Ticklefish

That's how it started. This used to be just a short batch file to help me pull and decompile certain files from my phone. I was always decompiling the same files so I wrote a batch file to save typing the same instructions over and over again.


Then I got a bit carried away and made it a bit more complex...lol

hmm why don't you push your source code to github then?
3rd July 2016, 04:03 PM |#5378  
Quote:
Originally Posted by tim241

hmm why don't you push your source code to github then?

I'll certainly consider it.
The Following User Says Thank You to Ticklefish For This Useful Post: [ View ] Gift Ticklefish Ad-Free
5th July 2016, 06:06 PM |#5379  
iamthedj's Avatar
Senior Member
Flag west ilsip
Thanks Meter: 240
 
More
Quote:
Originally Posted by Ticklefish

Have you installed your framework files? And have you tried using the beta version of apktool 2.1.2?

Sent from my Sony Xperia Z3 Compact using XDA Labs

i have installed the framework files and yes apktool 2.1.2
6th July 2016, 01:55 AM |#5380  
carl1961's Avatar
Senior Member
Flag Tickfaw
Thanks Meter: 6,235
 
More
Quote:
Originally Posted by iamthedj

i have installed the framework files and yes apktool 2.1.2

could it be your messing with a customized "Settings_com.android.settings.apk" usually it is Settings.apk

maybe upload your "Settings_com.android.settings.apk" and framework-res.apk

I just decompiled and recompiled a nexus 6 Settings.apk with no issue

could be your using a odexed rom
6th July 2016, 06:33 PM |#5381  
Senior Member
Flag A Coruña
Thanks Meter: 204
 
More
Hi, I'm having a issue with my modded apks. I'm on S7 Edge Masrhmallow using Apktool 2.1.1 and I build my own rom without mods and works well. The apks decompile and compile without errors and if I flash them on my installed rom all works well, without fc's or other issues. But if I put them in my own rom and install it in the same way of the non moded one(wipes, formats,etc....) the rom enter on bootloop, and the phone vibrates some times. I'm recompiling the apps( SytemUi, SecSettings2, framework-res) with the original signature. What can be the problem??? Thanks and sorry for the offtopic
The Following User Says Thank You to gvmiguez For This Useful Post: [ View ] Gift gvmiguez Ad-Free
Post Reply Subscribe to Thread

Tags
apktool, decompile, recompile, smali, xml

Guest Quick Reply (no urls or BBcode)
Message:
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes