Get application version name using adb

后端 未结 5 1997
一整个雨季
一整个雨季 2021-01-30 02:20

Is there an easy way to get the version name of an application on an Android device using adb shell?

I found the application version number (not the version name) in /d

相关标签:
5条回答
  • 2021-01-30 02:34

    If you want to get all package versions, try this awk script:

    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 = ""; } }'
    
    0 讨论(0)
  • 2021-01-30 02:39

    Dumpsys package is your friend

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


    Will return

    versionCode=X targetSdk=YY
    versionName=Z.Z
    
    0 讨论(0)
  • 2021-01-30 02:48

    In case someone needs all apps versions for comparing purposes then here is my 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
    

    Maybe it will be helpful for somebody but please note that I use versionName and ignore versionCode, so use with care.

    0 讨论(0)
  • 2021-01-30 02:49
    adb shell dumpsys package my.package | grep versionName
    

    as mentioned by @david and @Jeremy Fishman. This will be much quicker than:

    adb shell dumpsys | grep -A18 "Package \[my.package\]"
    
    0 讨论(0)
  • 2021-01-30 02:51

    If you don't want install *.apk on device but you need get version of app, you can do it as follow

    $ANDROID_HOME/build-tools/28.0.3/aapt dump badging app/build/outputs/apk/app.app
    
    0 讨论(0)
提交回复
热议问题