[英]My Android app crashes even though I am catching the exception it says is causing the crash
这是我的代码:
private ArrayList<PInfo> getSelectedPackages() {
ArrayList<PInfo> apps = new ArrayList<PInfo>();
for (String aname : Lock.getAllowedApps()) {
try {
PackageInfo pi = getPackageManager().getPackageInfo(aname, 0);
PInfo newInfo = new PInfo(pi.applicationInfo, getPackageManager());
apps.add(newInfo);
} catch (NameNotFoundException e) {
ErrorReporter.getInstance().handleSilentException(e);
}
}
return apps;
}
崩溃的线是:
PackageInfo pi = getPackageManager().getPackageInfo(aname, 0);
因为我正在捕捉错误,这没有任何意义。 希望有人可以告诉我我做错了什么,或者这是Android的某种错误。 这是日志显示的内容:
android.content.pm.PackageManager$NameNotFoundException: com.teachersparadise.dinosaurscoloringbook at android.app.ContextImpl$ApplicationPackageManager.getPackageInfo(ContextImpl.java:1725) at com.nyanapps.lockfortots.free.Home.getSelectedPackages(Home.java:179)
您可能希望确保您的包名称字符串格式正确,并且您可能无法捕获正确的异常。
请注意,异常是PackageManager.NameNotFoundException
http://developer.android.com/reference/android/content/pm/PackageManager.NameNotFoundException.html
您可能正在捕获javax.naming.NameNotFoundException
而抛出的异常是android.content.pm.PackageManager$NameNotFoundException
尝试catch (Exception e)
并检查它是否确实是你的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.