一般对于我来说如果需要知道一个apk的包名的话,有两种比较快速的方式:
(1)使用命令:aapt dump badging xxx.apk ,一般是apk就在电脑上,使用比较方便。
(2)使用命令:dumpsys window |grep mFocusedWindow ,通过查看当前window来知道包名,一般是这个apk就在开发平台上,使用比较方便。当然使用dumpsys activity也是一样的。
但是如果又想知道包名,还想知道AndroidManifest.xml的具体内容,比如我之前遇到一个问题,客户给过来一个apk,然后测试部门说这个apk不能旋转横屏,而且我也没有源码,为了说服测试人员这个是apk本身进行的设置,我需要拿出证据呀。这时就可以使用如下简单的一个命令:java -jar AXMLPrinter2.jar AndroidManifest.xml ,先把apk解压,使用这个命令来查看AndroidManifest.xml文件的内容,发现在AndroidManifest.xml文件中,基本所有的Activity都设置了竖屏属性:android:screenOrientation="1"。
灰常方便有没有,内容基本一目了然。一般情况下,解压后直接打开AndroidManifest.xml是显示乱码的。当然,使用命令的时候重定向一下看着就更美了~
java -jar AXMLPrinter2.jar AndroidManifest.xml > manifest.txt
当然,你得下载AXMLPrinter2.jar后再使用这个命令。