You can decompile even minified / obfuscated APK’s using one of these tools (I prefer the latter). Why would you want to do that? For example, when you like a feature in an App and reverse-engineer how it’s done.
Decompile into Java source code using Procryon:
apktool d -s some.apk -o output_dir
dex2jar output_dir/classes.dex
procyon-decompiler classes-dex2jar.jar -o decompiled_dir
Or alternatively, one tool to rule them all: jadx --deobf some.apk
In my opinion JADX with the built-in deobfuscator gives the most readable results. Note however that some blocks might now be decompiled in either case, leaving you no other option but to read nasty byte-code.