您好我在使用packageinfo请求首次安装时在我的应用中遇到这个奇怪的错误! 但仅对某些设备而言,错误是罕见的,而且不常见。它为什么会发生并且有解决方法?
PackageManager manager = this.getPackageManager();
info = manager.getPackageInfo(this.getPackageName(), 0);
vPname = info.packageName;
vName = info.versionName;
vVers = info.versionCode;
installDate = info.firstInstallTime;
给出
java.lang.NoSuchFieldError: android.content.pm.PackageInfo.firstInstallTime
的minSdkVersion = “7”
一些返回错误的设备列表:
答案 0 :(得分:2)
那是因为“firstInstallTime”是在API 9(姜饼)上面引入的:
http://developer.android.com/reference/android/content/pm/PackageInfo.html#firstInstallTime
为了避免此类错误,建议运行LINT检查(例如,使用运行按钮附近的“V”按钮)。 LINT有很多错误和警告可以帮助您获得更好的代码。你甚至可以检查每次保存操作的问题。
当然,它也有错误和缺少检查,即使是这件事。