我收到Google Play中应用程序的错误报告。问题是,它很模糊 ,我不能因ProGuard的配置获取了大量的从堆栈跟踪信息:检索目录路径中的空指针异常
的方法,其中应用程序崩溃是:
private File getExternalStorageAppRoot(Context ctx) {
String basePath="cache";
if (Build.VERSION.SDK_INT >= 8) {
File extFile = ctx.getExternalFilesDir(basePath);
if (extFile != null) {
return extFile;
}
}
String externalFilesDir = Environment.getExternalStorageDirectory().getAbsolutePath()
+ File.separator + "Android" + File.separator + "data" + File.separator
+ ctx.getApplicationInfo().packageName + File.separator + "files";
return new File(externalFilesDir, basePath);
}
唯一的例外是NullPointerException和ctx始终不为null。任何关于它在哪里崩溃的想法?
在我的测试这种方法不会崩溃
感谢
您是否知道系统正在运行的SDK级别遇到崩溃? – 2012-07-22 08:37:09
不是,应用程序每周至少接收15次崩溃 – Addev 2012-07-22 08:38:48
NPE是否有可能以另一种方式发生? ProGuard的回溯有时会为堆栈条目提供一些建议。 – 2012-07-22 08:48:07