TheZ3ro / apk2java-linux

Decompile apk and get java or smali source
84 stars 31 forks source link

Big refactorings #9

Closed orf closed 7 years ago

orf commented 7 years ago

I took a stab at doing some refactoring and it appears to work fine. I replaced the shell=True calls (they are not needed with this, perhaps on Windows they where) and added a call wrapper to print what is currently running.

I made all the call calls use arrays, which gets around the quoting issues that you experience if you use shell=true and manually concatenate strings together.

I got rid of the hard-coded ************* headers for each stage and added a function that deals with them dynamically. I also ran an auto-formatter on the code to make it more pythonic, hence the horrible diff. Sorry!

Grab a copy of the script from my branch here: https://github.com/orf/apk2java-linux/blob/patch-1/apk2java.py

Give it a test and if it's OK then merge 👍 feel free to ask me any questions

Currently this doesn't work with APK's that have a space in them. No big deal I guess, but I figured I would try and refactor the code to use subprocess.call properly rather than just concating strings everywhere.~

Edit: also, thanks for this script, it's pretty damn good!