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

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

阅读我使用的应用程序版本:

PackageInfo pinfo = null; pinfo = getPackageManager().getPackageInfo(getPackageName(), 0); String versionName = pinfo.versionName; 

当然包括try / catch。

Solutions Collecting From Web of "在android中检查外部应用程序版本名称"

你需要弄清楚什么是你的设备上安装的Skype的正确的包名称。

 PackageInfo pinfo = null; pinfo = getPackageManager().getPackageInfo("com.skype.android", 0); int verCode = pinfo.getVersionCode(); String verName = pinfo.getVersionName(); 

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

 List<PackageInfo> packages = getPackageManager().getInstalledPackages(PackageManager.GET_META_DATA); 

你应该能够使用这样的事情做到这一点:

 List<PackageInfo> packages = getPackageManager().getInstalledPackages(0); PackageInfo mypackage = <get required app from the list>; String versionName = mypackage.versionName; int versionCode = mypackage.versionCode; 

看看PackageInfo类 。

这对我工作:

 PackageInfo pinfo = context.getPackageManager().getPackageInfo( "com.myapp", 0 ); String verName = pinfo.versionName; int verCode = pinfo.versionCode;