当我得到如下版本代码时:
public static int getVersionCode(Context context) {
try {
PackageInfo info = context.getPackageManager().getPackageInfo(context.getPackageName(), 0);
return info.versionCode;
} catch (Exception e) {
return -1;
}
}
这是发生时的痕迹:
java.lang.RuntimeException: Package manager has died
at android.app.ApplicationPackageManager.getPackageInfo(ApplicationPackageManager.java:78)
最佳答案
我有类似的代码并且它工作正常,所以我不明白为什么你的崩溃,我很好奇你是否能找到导致崩溃的原因。
您的另一种选择是不动态查找它,而是从构建配置中获取它。
public int getVersion(Context context) {
return BuildConfig.VERSION_CODE;
}
关于java - 在android中获取versionCode时包管理器死掉了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32499078/