aapt和keytool常用命令
查看apk基本情况
aapt d badging xxx.apk
//包名 版本号 版本名
package: name='com.ti.demo' versionCode='1' versionName='1.0'
sdkVersion:'23'
targetSdkVersion:'28'
//权限列表
uses-permission:'android.permission.INTERNET'
application-label:'Demo'
...
//应用名 图标资源
application: label='Demo' icon='res/mipmap-mdpi-v4/ic_launcher.png'
//主Activity
launchable-activity: name='com.ti.demo.rx.RxActivity' label='' icon=''
uses-feature:'android.hardware.touchscreen'
main
other-receivers
other-services
supports-screens: 'small' 'normal' 'large' 'xlarge'
supports-any-density: 'true'
aapt d[ump] [选项] <你的应用>
这里可以输入全称dump,也可以直接用d代替。
选项 | 说明 | 例如 |
---|---|---|
badging | 查看apk包的packageName、versionCode、applicationLabel、launcherActivity、permission等各种详细信息 | aapt dump badging <file_path.apk> |
permissions | 查看权限 | aapt dump resources <file_path.apk> |
resources | 查看资源列表 | aapt dump resources <file_path.apk> > sodino.txt |
configurations | 查看apk配置信息 | aapt dump configurations <file_path.apk> |
xmltree | 以树形结构输出的xml信息 | aapt dump xmltree <file_path.apk> res/xxx.xml |
xmlstrings | 查看指定apk的指定xml文件 | aapt dump xmlstrings <file_path.apk> res/xxx.xml |
类如:
aapt d permissions app-debug.apk
aapt d resources app-debug.apk
aapt d xmltree app-debug.apk AndroidManifest.xml
aapt d xmltree app-debug.apk res/layout/activity_main.xml
打包好的apk中移除文件
aapt r[emove] [-v] file.{zip,jar,apk} file1 [file2 …]例如:aapt r <你的apk文件> AndroidManifest.xml, 这个就是将apk中的AndroidManifest移除掉
添加文件到打包好的apk中
aapt a[dd] [-v] file.{zip,jar,apk} file1 [file2 …]例如:aapt a <你的apk文件> <要添加的文件路径>, 这个就是将文件添加到打包好的apk文件中
keytool常用命令
查看应用的签名信息
keytool -printcert -jarfile xxx.apk# 最后是你APK的位置,好像zip压缩也可以
keytool -printcert -file META-INF/CERT.RSA rsa文件在应apk相应目录中
keytool -list -v -keystore platform.jks 查看签名信息