使用aapt dump命令获取Apk信息
因工作需要,前一段时间继续又遇到了解析Apk信息的工作。由于这次需要读取android资源文件中的内容,因此使用了aapt工具,简单记录一下过程如下:
1.使用java.util.zip解包apk,使用AXMLPrinter反编译AndroidManifest.xml文件,解析XML文件获取:包名,版本号,最低sdk版本名,用户权限信息。以及appname的resId信息,icon的resId,版本名称的resId。
2.再使用Runtime类执行命令:aapt dump --values resources filename.apk获取process输出信息.
3.使用reader按行解析包含resId但是不包含spec resource的行,获取2个引号之间的值.即为appname,版本名称,和Icon的地址.
(其它属性只要获取resId同样适用)
附aapt dump命令参数资料:
1.使用“aapt dump”查看APK内容:http://hi.baidu.com/qian00adsf/item/71ddca94ce26af34336eeb83