alexzaitsev/apk-dependency-graph

[IMPROVEMENT] Remove apktool dependency and use baksmali to decode an APK file.

victorrattis opened this issue · 1 comments

Currently, apktool lib is used to decode an APK file into smali code, and its jar is added directly in the project and for each update in the jar is done the repository size increases (today, the repository size is ~23MB).

Also, apktool does more than decode an APK in smali code:

I: Loading resource table...
I: Decoding AndroidManifest.xml with resources...
I: Loading resource table from file: C:\Users\username\AppData\Local\apktool\framework\1.apk
I: Regular manifest package...
I: Decoding file-resources...
I: Decoding values / XMLs...
I: Baksmaling classes.dex...
I: Copying assets and libs...
I: Copying unknown files...
I: Copying original files...

and only using the baksmali is better because it just decodes the classes.dex to smali code.

Tasks:

  • Remove the apktool jar file of the project;
  • Use the baksmali lib to decode an APK;
  • Use ivy apache to download and manager the baksmali dependency on the project;
  • Implement a solution to use the baksmali lib in the project to decode an APK.

I am closing this issue as complete because the pull request for that was integrated successfully!