android - 获取 java.lang.IllegalStateException : No activity when resuming an activity

标签 android android-fragments android-lifecycle

我在我的一项 Activity 中遇到了一个奇怪的错误。我不明白为什么会这样。

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

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

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。

我已经尝试更新到支持库的新版本,并恢复到旧版本,但没有成功。

我该如何解决这个问题?

最佳答案

没关系,我得到了答案 - 与 THIS 相同一个。

有人在详细信息页面中覆盖了 onWindowFocusChanged(boolean hasFocus),而是调用了 super.onResume()。不过,我确实希望错误消息更清楚一些。

关于android - 获取 java.lang.IllegalStateException : No activity when resuming an activity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15498216/

相关文章:

java - 支持按索引和键排序、插入和查找的集合/映射

java - 在 Netbeans 中连接到服务器端 (PHP) 期间客户端 (Android) 出现错误

android - Viewpager 的内容在旋转时丢失

java - 代号一应用程序生命周期

转到主屏幕时,Android onStop 调用 vs onPause

android - 当用户滑开时前台服务被杀死

java - Kotlin 的 "Do not wrap after single annotation"模拟?

android - Drawable 对象上的 ObjectAnimator

android - 无法在新 Activity 中显示来自先前 fragment 的数据

android-fragments - 我如何从片段(kotlin)中打开片段