【问题标题】:read res folder from an apk从 apk 中读取 res 文件夹
【发布时间】:2011-12-21 08:28:01
【问题描述】:

我想读取 res 文件夹中的所有 xml 文件。 我可以使用 jar AXMLPrinter2.jar 读取 Manifest 文件 同样,我试图读取 res 文件夹中的 xml 文件,如下所示,

java -jar 'AXMLPrinter2.jar' 'account_list_item.xml' >'account_list_item.txt' 

但它显示了一些异常,如下所示,

java.lang.ArrayIndexOutOfBoundsException: 109
    at android.content.res.StringBlock.getShort(StringBlock.java:231)
    at android.content.res.StringBlock.getString(StringBlock.java:91)
    at android.content.res.AXmlResourceParser.getName(AXmlResourceParser.java:140)
    at test.AXMLPrinter.main(AXMLPrinter.java:56)

有什么办法吗?

【问题讨论】:

    标签: android apk


    【解决方案1】:

    我认为 AXMLPrinter2.jar 需要您首先从 APK 中提取 XML 文件。您可以使用 apktool 做到这一点,它已经将文件转换为人类可读的形式。

    这样使用:

    apktool decode --no-src yourapk.apk
    

    【讨论】:

    • --no-src 表示你不想对代码做任何事情,你只想提取资源。
    • 你得到的文件已经是文本格式了,你不需要AXMLPrinter2.jar了
    【解决方案2】:

    根据thisthis
    如果 apk 的 minSdkVersion >= 7,则它不起作用

    更新:
    found this

    【讨论】:

      猜你喜欢
      • 2014-12-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-05
      • 2018-10-08
      • 1970-01-01
      相关资源
      最近更新 更多