使用亚行获取应用程序的版本名称(Get application version name using

2019-07-30 23:39发布

有一种简单的方法来获得使用亚行外壳在Android设备上的应用程序的版本名称?

我发现在/data/system/packages.xml的应用程序版本号(不是版本名称)。

如果有包含应用程序信息文件这将是很好。

Answer 1:

adb shell dumpsys package my.package | grep versionName

如提到@大卫和@Jeremy菲什曼 。 这将是比快得多:

adb shell dumpsys | grep -A18 "Package \[my.package\]"


Answer 2:

Dumpsys包是你的朋友

~/# adb shell
shell@mo:/ dumpsys package tld.comp.app_name | grep version


将返回

versionCode=X targetSdk=YY
versionName=Z.Z


Answer 3:

如果有人需要的所有应用程序版本在这里比较的目的则是我的oneliner:

for p in `adb shell pm list package | awk -F"package:" '{print $2}'`; do echo -n "$p: "; adb shell dumpsys package $p | grep -i versionName | awk -F"=" '{print $2}'; done

也许这将是有帮助的人,但是请注意,我用的versionName和忽略的versionCode,所以请谨慎使用。



Answer 4:

如果你想获得的所有包版本,试试这个awk脚本:

adb shell dumpsys package | awk '/^[ ]*Package \[.*\] (.*)/ { i = index($0, "[") + 1; pkg = substr($0, i, index($0, "]") - i); } /[ ]*versionName=/ { { print pkg "\t" substr($0, index($0, "=") + 1); pkg = ""; } }'


Answer 5:

如果你不希望在设备上安装* .apk文件,但你需要获得应用程序的版本,你可以做如下

$ANDROID_HOME/build-tools/28.0.3/aapt dump badging app/build/outputs/apk/app.app


文章来源: Get application version name using adb
标签: android adb