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

时间:2012-01-24 14:57:58

标签: android

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

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

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

当然有try / catch包围。

3 个答案:

答案 0 :(得分: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;

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

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

答案 1 :(得分:2)

您应该可以使用以下内容执行此操作:

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

PackageInfo mypackage = <get required app from the list>;

String versionName = mypackage.versionName;
int versionCode = mypackage.versionCode;

查看PackageInfo class

答案 2 :(得分:2)

这对我有用:

box-shadow