我知道.apk文件是.zip文件,但AndroidManifest.xml看起來是二進制文件,當然grep或hex編輯器還沒有成功提取versionCode。從android apk文件解析versionCode
有沒有人知道如何解析或提取它?我發現自己在一個Python腳本中打開了AndroidManifest.xml文件。
我知道.apk文件是.zip文件,但AndroidManifest.xml看起來是二進制文件,當然grep或hex編輯器還沒有成功提取versionCode。從android apk文件解析versionCode
有沒有人知道如何解析或提取它?我發現自己在一個Python腳本中打開了AndroidManifest.xml文件。
它們是二進制XML文件。您可以使用像AXML2XML這樣的工具將二進制XML文件轉換爲基於文本的XML文件。有幾種不同的工具,有些比其他工具做得更好。
AXML2XML: http://devtcg.blogspot.com/2008/03/tool-to-read-android-binary-xml-files.html
AXMLPrtiner: http://forum.xda-developers.com/showthread.php?t=514412
apktool.bat d application.apk
假設你已經安裝了Android SDK,你可以使用aapt來查找d這個值。例如,在Linux上:
aapt dump badging MyAwesomeApplication.apk |grep version
你可以參考this。 它在翻譯二進制xml文件時從資源表中讀取必要的字符串。
`aapt dump badging MyAwesomeApplication.apk | sed'/^package /!d'| sed's /.* versionCode =。\([0-9] * \)。*/\ 1/g'`只有versionCode – mbonnin 2015-02-16 16:40:58