非Android平台获取apk文件信息

本文探讨了在非Android平台下获取apk文件信息的两种方法:使用aapt命令与AXMLPrinter2。实验结果显示,这两种方法各有利弊。aapt在处理AndroidManifest.xml中的空格时存在问题,而AXMLPrinter2则无法正确解析strings.xml中的值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前两天一个项目需要在非Android平台获取apk文件的信息,包括包名、应用程序在Android上显示的名称和图标。在网上查了一下资料,发现有两种方法可以尝试,一种是使用aapt命令,一种是使用AXMLPrinter2。相应的使用方法在网上都可以查到,这里不再赘述。

根据我的实验结果,这两种方法都有着各自的问题。使用AXMLPrinter2的方法,无法获得存储在res/values/strings.xml中的真实值,只能获得类似android:label="@7F0800F7"的结果。这种情况下aapt是可以获得准确的字符串结果的。而aapt存在的一个小问题是,当AndroidManifest.xml文件中的值是<application android:label="My example"...>的形式时,即字符串中存在空格时,aapt无法获得该字符串的值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值