我们正在处理一个项目,我们必须计算MD5并提取在表单中上传的APK的pname。我们已经完成了MD5位,但现在却被pname了。
pname包含在AndroidManifest.xml中,因此我们可以使用JS zip库从APK中提取AndroidManifest.xml,但问题是它是二进制XML。在服务器端,我们只是使用aapt或apktool来解压缩和解码APK,然后以明文读取AndroidManifest.xml,但我们在JS中做什么?
二进制AndroidManifest.xml看起来像这样:http://i.imgur.com/YQCnkp4.png。
有什么想法吗?
答案 0 :(得分:0)
在找到Android使用的二进制XML的名称是AXML,并找到对AXMLPrinter的引用之后,我们目前提出的最好的方法是使用JS zip库解压缩AndroidManifest.xml文件,将其发送到服务器,然后使用AXMLPrinter2.jar:
java -jar AXMLPrinter2.jar AndroidManifest.xml
python axmlprinter.py -i AndroidManifest.xml
我仍然喜欢找到AXMLPrinter的JS实现,但我认为这样做会不然。