
This allows you to decode and build most apks without a problem. These are known as framework resources and Apktool relies on theseĮvery Apktool release contains internally the most up to date AOSP framework at the time of the release. I: Framework installed to: foo/bar/1-baz.apk IntermediateĪs you probably know, Android apps utilize code and resources that are found on the Android OS itself. $ apktool if framework-res.apk -t baz -p foo/bar

$ apktool if framework-res.apk -p foo/bar pkgId of framework-res.apk determines number (which is 0x01) -p, -frame-path - Store framework files into Īllow for a finer control over how the files are named and how they are stored.Frameworksįrameworks can be installed either from if or install-framework, in addition two parameters You must resign the application.Īndroid documentation can help with this. Must use folder, not apk/jar file Info In order to run a rebuilt application. builds bar folder into bar/dist/bar.apk file builds folder into /dist/foo.jar file The build option can be invoked either from b or build like shown below decodes bar.apk to baz folder Building The decode option on Apktool can be invoked either from d or decode like shown below. In addition to XMLs, resources such as 9 patch images, layouts, strings and much more are correctly decoded to source form. Viewing AndroidManifest.xml again results in something much more human readable I: Loading resource table from file: 1.apk I: Decoding AndroidManifest.xml with resources.

Obviously, editing or viewing a compiled file is next to impossible. If you tried to view AndroidManifest.xml. However, at this point you have simply inflated compiled sources.

If you were to simply unzip an apk like so, you would be left with files such as x and resources.arsc.Įxtracting: res/drawable-hdpi/ic_launcher.png Apks are nothing more than a zip file containing resources and assembled java code.
