└── README.md /README.md: -------------------------------------------------------------------------------- 1 | # AndroidReverseEngineering 2 | all about android reverse engineering 3 | 4 | ## Getting APK from mobile 5 | ``` 6 | >> adb shell pm list packages 7 | >> abd pull /data/app/apkfile.apk 8 | ``` 9 | 10 | ## Install/Uninstall 11 | ``` 12 | >> adb install apkfile.apk 13 | >> adb uninstall apkfile.apk 14 | ``` 15 | 16 | ## Apktools decoding/build 17 | ``` 18 | apktool d apkfile.apk -o apkfolder 19 | ``` 20 | ``` 21 | apktool b apkfolder 22 | ``` 23 | 24 | ## Generating keystore file 25 | ``` 26 | keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000 27 | ``` 28 | ## Sign the apk file 29 | ``` 30 | jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore app-debug.apk alias_name 31 | ``` 32 | 33 | ## Tools 34 | * [Apktools](https://ibotpeaches.github.io/Apktool/) 35 | * [dex2jar](https://tools.kali.org/reverse-engineering/dex2jar) 36 | * Android Studio 37 | * sdk 38 | * emulator 39 | * keytools 40 | * jarsigner 41 | * [jd-gui](http://java-decompiler.github.io/) (loss some important metadata) 42 | 43 | ## Links 44 | * [Unofficial Google Play API](https://github.com/egirault/googleplay-api) 45 | * [Chrome Extension](https://chrome.google.com/webstore/detail/apk-downloader/fgljidimohbcmjdabiecfeikkmpbjegm?hl=en) 46 | * [Smali Plugin installation](https://crosp.net/blog/software-development/mobile/android/android-reverse-engineering-debugging-smali-using-smalidea/) 47 | 48 | 49 | 50 | 51 | 52 | --------------------------------------------------------------------------------