windows下apk查看工具的原理
游戲出了版本之后,提供給渠道,有部分渠道會修改包名(當(dāng)他們內(nèi)部系統(tǒng)做出調(diào)整后,可能會改包名),這個時候我又需要知道包名。之前沒辦法,試圖反編譯apk,發(fā)現(xiàn)失敗了。然后就安裝apk到手機上,手機上再下載一個包查看軟件,然后找到包名。
?
之后我一直在想,windows下應(yīng)該是能實現(xiàn)的,而碗豆莢之類的工具,只顯示apk的圖標(biāo)和它所需要的權(quán)限,它對應(yīng)的啟動activity及包名是沒有顯示出來的。我嘗試搜索”apk 包名查看工具”,然后找到apkhelper這個工具,下載使用后發(fā)現(xiàn)它能很快就顯示相應(yīng)的信息,對此我就比較好奇了,研究了一下,記錄幾個重要的點。了解這些要點,完全可以自己動手寫工具了:
?
重點是二個應(yīng)用程序:aapt.exe、unzip.exe
?
一、獲取apk的包名及版本信息
通過aapt就能查到它所支持的參數(shù)及用法
?
aapt.exe dump? badging xxx.apk > a.txt
將dump信息輸入至a.txt中,控制臺打印信息顯示中文會亂碼,打開a.txt會顯示相應(yīng)的信息:
這樣就拿到了
包名? -- package name
版本 -- versionCode、versionName
icon信息 – application-icon-xx
?
二、獲取icon圖標(biāo)
右擊apk,通過壓縮軟件打開,的確可以找到icon,那是不是意味著通過unzip apk來找到icon呢,可以是可以,不過好幾十M的東西解壓也需要時間,就顯得很浪費了。我看apkhelper很快就顯示出來了,這個就需要再研究了,之后我搜索“aapt 獲取apk icon”找到這樣一篇文章:
<基于aapt實現(xiàn)全尺寸解析apk圖標(biāo)>
我發(fā)現(xiàn)它是遍歷文件流來查找文件,如果我想在dos下使用,也就只需要解壓指定的文件即可。icon的路徑通過第一步已經(jīng)知道了,現(xiàn)在就是要找命令如何調(diào)用了,搜索到這篇帖子:
<只把zip中的某個文件unzip出來,命令怎么寫?>
unzip? -j xx.apk?? file_path? -d? out_dir
不加-d 就直接將相應(yīng)的文件解壓到當(dāng)前目錄中了
?
?
參考鏈接:
android利用aapt解析apk得到應(yīng)用名稱 包名 版本號 權(quán)限等信息
如何快速得到Apk的簽名/包名等信息
轉(zhuǎn)載于:https://www.cnblogs.com/meteoric_cry/p/4565524.html
總結(jié)
以上是生活随笔為你收集整理的windows下apk查看工具的原理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: zabbix分布式监控环境完全编译安装部
- 下一篇: java信息管理系统总结_java实现科