任何lib提取android resources.arsc

sun*_*mes 4 android decompiling

我正在寻找一个库来提取存储在 res/values/strings.xml 中的 id 和值,例如 app_name。我解压了 apk,但是找不到 strings.xml。我使用 aapt 提取字符串值,但是缺少相应的 id。我尝试过 apktool 反编译 apk,然后解析 xml 文件以获取键和值。然而,这不是一个有效的方法,每个 apk 几乎需要 12 秒。我有超过 10,000 个 Android 恶意软件需要处理。这个方法确实花费了我太多的时间。我发现res/values/strings.xml中的所有id和值都被编码到文件resources.arsc中。我想知道是否有库可以从 resources.arsc 中提取 id 和值?

Tam*_*amy 6

Use appt for android-sdk (ex:- /build-tools/27.0.3/aapt )

./aapt dump resources ./debug.apk

Package Groups (1)
Package Group 0 id=0x7f packageCount=1 name=com.dianping.example.activity
  Package 0 id=0x7f name=com.dianping.example.activity
    type 1 configCount=3 entryCount=1
      spec resource 0x7f020000 com.example.activity:drawable/ic_launcher: flags=0x00000100
      config mdpi-v4:
        resource 0x7f020000 com.example.activity:drawable/ic_launcher: t=0x03 d=0x00000000 (s=0x0008 r=0x00)
      config hdpi-v4:
        resource 0x7f020000 com.example.activity:drawable/ic_launcher: t=0x03 d=0x00000001 (s=0x0008 r=0x00)
      config xhdpi-v4:
        resource 0x7f020000 com.example.activity:drawable/ic_launcher: t=0x03 d=0x00000002 (s=0x0008 r=0x00)
    type 2 configCount=1 entryCount=1
      spec resource 0x7f030000 com.dianping.example.activity:string/app_name: flags=0x00000000
      config (default):
        resource 0x7f030000 com.dianping.example.activity:string/app_name: t=0x03 d=0x00000003 (s=0x0008 r=0x00)
Run Code Online (Sandbox Code Playgroud)

此链接可能有帮助http://elinux.org/Android_aapt


Die*_*ego 5

它不是一个合适的库,但您可以从名为ArscBlamer的官方 Google 项目借用代码: https: //github.com/google/android-arscblamer