有些游戏第三方比如分享需要配置游戏包名和签名,不同渠道包名签名又不同,所以时常需要查看不同apk包等签名信息,之前是使用等微博开放平台的手机客户端查看apk签名,前提是知道包名,网上找了下查看签名和包名的方法,找到一个比较好用的工具分享一下。
微博开放平台查看签名工具:下载
然而,不知道包名的情况下还是无法获取的,更何况还要安装到手机上使用app获取,在开发中显然下面到方式更简便。
获取 Apk 包名、VersionCode、VersionName 等相关信息
通过使用 aapt,可以获取 Apk 的包括 packageName、title、versionCode 等等信息。
Mac 用户下载这个 AAPT,Windows 用户下载这个AAPT
然后在控制台通过如下命令:
aapt dump badging ~/Downloads/youku.apk
即可得到诸如这样的信息:
package: name='com.youku.pad' versionCode='13' versionName='2.4.2'
uses-permission:'android.permission.READ_PHONE_STATE'
uses-permission:'android.permission.WRITE_EXTERNAL_STORAGE'
uses-permission:'android.permission.WAKE_LOCK'
uses-permission:'android.permission.SYSTEM_ALERT_WINDOW'
uses-permission:'android.permission.WRITE_SETTINGS'
application-label:'优酷 HD'
…...
获取 Apk 签名信息
首先在下载 「wandoujia-tools.jar」程序包到本地,在控制台输入诸如这行命令(无换行)
java -cp ~/Downloads/wandoujia-tools.jar com.wandoujia.tools.ApkSignatureToolsMain " ~/Downloads/youku.apk"
特别注意,其中粗体部分分别表示您下载的 wandoujia-tools.jar 所在目录和你想要分析的那个 Apk 的完整路径,其他部分不变。执行后会看到这样两句:
signatureMd5=b791ac2c93d279c4a52b6bcc68c5c32e
md5=b5ed58fa6fbb460c9b618fccfcc8cb37
分别表示签名 MD5 和文件 MD5 字符串。
说明:最近发现获取签名有时不正确,微博apk工具获取正确,什么原因暂时不知