找不到类似的问题,所以: 我有类似的例外报告。它并没有指向我申请的任何地方。我认为当App尝试恢复视图状态时,可能会发生这种情况,并且传递给容器的对象为空。
我正在使用android-support-v4 lib来获取片段+ Parcelable接口,以便在对话框片段中存储数据。 API 16的Android项目目标,使用Project API 16.
根据报告,此崩溃仅出现在4.0.3和4.0.4设备上。
有人遇到过这样的问题吗?
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.my/com.my.activities.MyActivity}: java.lang.NullPointerException
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3351)
at android.app.ActivityThread.access$700(ActivityThread.java:123)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1151)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4424)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at android.view.View.dispatchRestoreInstanceState(View.java:9938)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2318)
at android.view.View.restoreHierarchyState(View.java:9921)
at com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState(PhoneWindow.java:1625)
at android.app.Activity.onRestoreInstanceState(Activity.java:906)
at android.app.Activity.performRestoreInstanceState(Activity.java:878)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1100)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1934)
... 12 more
提前致谢!
答案 0 :(得分:2)
再次发现了一个肮脏的工作。
感谢Bill Blume对造成问题的原因进行了一些说明。
Jus覆盖活动的onRestoreInstanceState方法并处理如下所示的异常。
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
try{
super.onRestoreInstanceState(savedInstanceState);
}catch (Exception e) {
System.out.println("Exce");
}
}
再次感谢Bil Blume
答案 1 :(得分:1)
我自己也遇到过这个错误。和你一样,我只是通过崩溃报告收到了这个错误。我自己从来没有能够重现它。不幸的是,我还没有找到解决方案。但是,通过GrepCode查看Android源代码,我相信我有一些线索。在PhoneWindow.restoreHierarchyState()中,崩溃发生在以下代码片段中对restoreHierarchyState()的调用中:
if (mActionBar != null) {
SparseArray<Parcelable> actionBarStates =
savedInstanceState.getSparseParcelableArray(ACTION_BAR_TAG);
mActionBar.restoreHierarchyState(actionBarStates);
}
我的猜测是因为actionBarStates为null而发生NPE。 4.1或更高版本不会发生这种情况,因为4.1添加了actionBarStates的空检查。
我无法确切地说这是4.0.x操作栏的错误,android支持库,还是操作栏/菜单配置中的错误。
答案 2 :(得分:0)
您是否有机会使用intent get / put extras?您在日志中间有一个NullPointerException,这可能是因为将额外值添加到临时值 - Android app unable to start activity componentinfo