繁体   English   中英

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

[英]How to extract Android APK package version_name using python?

当前,我正在使用androguard( https://github.com/androguard/androguard ),但是读取包和提取version_name花费了太多时间。 是否有另一种方法可以使用python提取apk文件的version_name或使用androguard来执行此操作的更快方法。 此外,(如果有的话)通过Java进行操作的更快方法也将有所帮助(请详细说明这些步骤,因为我不了解Java)

在地方使用androguard的,你可以使用pyaxmlparser可在这里https://github.com/appknox/pyaxmlparser 您可以直接在python上运行它,并提取所有数据,例如包名称,版本名称等。 它速度很快,您每分钟可以提取大约30个应用程序的数据。

如果您有权使用AAPT(标准android sdk内置工具),则以下信息应为您提供。

aapt dump badging myApk.apk | grep versionName

另外,如果您不想使用grep并希望自己查找大量数据,则只需使用aapt dump badging myApk.apk并遍历字符串,直到找到所需的信息。

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

package: name='com.example.myapk' versionCode='49' versionName='1.2.3' platformBuildVersionName=''

要在python中执行此命令,请使用子过程模块: https : //docs.python.org/3/library/subprocess.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM