如何获得另一个应用程序的版本名称
我想获取我的世界袖珍版的versionName(例子0.13.0.b5)。
这是MCPE(我的世界袖珍版)
com.mojang.minecraftpe
我想将版本转换为String
。 我怎样才能做到这一点?
我的代码来获取包名称:
List<PackageInfo> packages = getPackageManager().getInstalledPackages(0);
PackageInfo mypackage = <com.mojang.minecraftpe>;
String versionName = mypackage.versionName;
解:
try
{
PackageInfo eInfo = getPackageManager().getPackageInfo("com.mojang.minecraftpe", 0);
changelog=eInfo.versionName;
lol.setText(changelog);
}
catch (PackageManager.NameNotFoundException e)
{}
它从包管理器(通过包)获取包信息并返回版本名称:
PackageInfo packageInfo = getPackageManager().getPackageInfo("com.mojang.minecraftpe", 0);
return packageInfo.versionName;
List<PackageInfo> apps = getPackageManager().getInstalledPackages(0);
ArrayList<App> result = new ArrayList<>();
for(int i=0;i<apps.size();i++) {
PackageInfo p = apps.get(i);
App newApp = new App();
newApp.pname = p.packageName;
newApp.versionName = p.versionName;
newApp.versionCode = p.versionCode;
}
String minecraft = "com.mojang.minecraftpe";
for (App name : result) {
if (Objects.equals(minecraft, name.pname))
String versionName = name.versionName;
}
// -----类描述------
class App {
String pname = "";
String versionName = "";
int versionCode = 0;
}
如果您想要版本代码,请使用name.VersionCode修改for循环中的'if'条件。
参考:PackageManager(用于检索与当前安装在设备上的应用程序包相关的各种信息的类。)
链接地址: http://www.djcxy.com/p/90765.html