在android中检查外部应用程序版本名称

Dim*_*Dim 12 android

我想知道如何阅读已安装的apk版本.例如,从我的应用程序,我想知道我的手机上安装了什么版本的Skype.

要阅读我的应用版本,我使用:

PackageInfo pinfo = null;
pinfo = getPackageManager().getPackageInfo(getPackageName(), 0);
String versionName = pinfo.versionName;
Run Code Online (Sandbox Code Playgroud)

当然有try/catch包围.

Max*_*xim 14

您需要弄清楚设备上安装的Skype的正确包名是什么.

PackageInfo pinfo = null;
pinfo = getPackageManager().getPackageInfo("com.skype.android", 0);

//getVersionCode is Deprecated, instead use getLongVersionCode().
long verCode = pinfo.getLongVersionCode();
//getVersionName is Deprecated, instead use versionName
String verName = pinfo.versionName;
Run Code Online (Sandbox Code Playgroud)

您可以使用以下方法调用获取所有包并找出名称:

List<PackageInfo> packages = getPackageManager().getInstalledPackages(PackageManager.GET_META_DATA);
Run Code Online (Sandbox Code Playgroud)

  • 我没有看到像pinfo.getVersionCode()或pinfo.getVersionName()这样的方法.请在底部查看我的答案,了解工作代码. (2认同)