2013-03-19 57 views
1

我在其中一个活动中收到奇怪的错误。我无法弄清楚为什么会发生这种情况。获取java.lang.IllegalStateException:恢复活动时没有任何活动

我有一个Activity它显示搜索结果给用户。当他点击其中一个时,会显示该结果的详细页面,当他关闭该页面时,它会返回到搜索结果屏幕。它在大多数情况下都能正常工作,除非某些设备在Activity恢复后立即崩溃。

堆栈跟踪也是无用的,因为它由支持片段管理器在内部抛出。

03-18 15:32:48.987: E/AndroidRuntime(26456): FATAL EXCEPTION: main 
03-18 15:32:48.987: E/AndroidRuntime(26456): java.lang.IllegalStateException: No activity 
03-18 15:32:48.987: E/AndroidRuntime(26456): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1075) 
03-18 15:32:48.987: E/AndroidRuntime(26456): at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1070) 
03-18 15:32:48.987: E/AndroidRuntime(26456): at android.support.v4.app.FragmentManagerImpl.dispatchResume(FragmentManager.java:1871) 
03-18 15:32:48.987: E/AndroidRuntime(26456): at android.support.v4.app.FragmentActivity.onResumeFragments(FragmentActivity.java:455) 
03-18 15:32:48.987: E/AndroidRuntime(26456): at android.support.v4.app.FragmentActivity$1.handleMessage(FragmentActivity.java:91) 
03-18 15:32:48.987: E/AndroidRuntime(26456): at android.os.Handler.dispatchMessage(Handler.java:99) 
03-18 15:32:48.987: E/AndroidRuntime(26456): at android.os.Looper.loop(Looper.java:150) 
03-18 15:32:48.987: E/AndroidRuntime(26456): at android.app.ActivityThread.main(ActivityThread.java:4333) 
03-18 15:32:48.987: E/AndroidRuntime(26456): at java.lang.reflect.Method.invokeNative(Native Method) 
03-18 15:32:48.987: E/AndroidRuntime(26456): at java.lang.reflect.Method.invoke(Method.java:507) 
03-18 15:32:48.987: E/AndroidRuntime(26456): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:849) 
03-18 15:32:48.987: E/AndroidRuntime(26456): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:607) 
03-18 15:32:48.987: E/AndroidRuntime(26456): at dalvik.system.NativeStart.main(Native Method) 
03-18 15:32:48.987: W/ActivityManager(241): Force finishing activity com.my.app/.SearchActivity 

Activity正在扩大FragmentActivity,但仅仅是因为我需要使用LoaderManager。移动到标准库是不可能的,因为我的应用必须支持Android 2.3。

我尝试更新到支持库的较新版本,并恢复到旧版本,但没有运气。

我该如何解决这个问题?

+0

您可以发布完整的堆栈跟踪? – Triode 2013-03-19 11:34:18

+0

这是完整的堆栈跟踪。这一切都在内部抛出。由于它仅在某些设备上发生,我怀疑这是设备自定义的问题,但我不知道如何解决它。 – 2013-03-19 11:36:27

+0

你有导入android.support.v4.jar吗? – Sajmon 2013-03-19 11:38:01

回答

1

没关系,我得到了答案 - 这是一样的THIS之一。

有人在细节页面中覆盖了onWindowFocusChanged(boolean hasFocus),但改为调用super.onResume()。我希望错误信息已经更清楚了。

0

对我来说,这是由于活动automaticay restared所以只设置lounch模式单一任务