如何使用python提取Android APK包version_name?

问题描述 投票:0回答:2

目前我正在使用androguard(https://github.com/androguard/androguard),但是在读取包和提取version_name时需要花费太多时间。有没有其他方法可以使用python或任何更快的方式使用androguard提取apk文件的version_name。此外,(如果有的话)通过java更快的方式也会有所帮助(请详细说明我不了解java的步骤)

java android python
2个回答
1
投票

代替使用androguard,您可以使用qaxxswpoi中提供的pyaxmlparser。您可以直接在python上运行它并提取所有数据,如包名称,版本名称等等。它速度很快,您每分钟可以提取大约30个应用程序的数据。


0
投票

如果您可以访问AAPT(标准的android sdk内置工具),以下内容应该为您提供信息。

https://github.com/appknox/pyaxmlparser

或者,如果您不想使用grep并且想要自己搜索大量的数据,只需使用aapt dump badging myApk.apk | grep versionName 并遍历字符串,直到找到您要查找的信息。

使用SDK 27.0.3,以下是使用grep返回上述命令:

aapt dump badging myApk.apk

要在python中执行此命令,请使用子进程模块:package: name='com.example.myapk' versionCode='49' versionName='1.2.3' platformBuildVersionName=''

© www.soinside.com 2019 - 2024. All rights reserved.