Я получаю это исключение на устройстве 4.4.2. Не воспроизводится на устройстве Android 4.3 или ниже.
У меня есть домашняя активность (подкласс поддержки ActionBarActivity
). Домашняя активность проверяет логический флаг, и если true, запускает активность заставки (да, в идеале, всплеск появляется перед домашней активностью, но предположим, что я не могу изменить его, чтобы работать так на данный момент).
Заставка запускается с помощью startActivityForResult
, она загружает некоторые параметры конфигурации с сервера, а затем заканчивает и возвращает результат обратно в домашнюю активность.
Странно, что это работает отлично на 4.3 и ниже, но на 4.4 устройствах я получаю вышеописанное исключение (полная трассировка стека):
02-21 13:36:16.733 24409-24409/test.player E/ActivityThread﹕ Performing stop of activity that is not resumed: {test.player/test.ui.actvities.HomeActivity}
java.lang.RuntimeException: Performing stop of activity that is not resumed: {test.player/test.ui.actvities.HomeActivity}
at android.app.ActivityThread.performStopActivityInner(ActivityThread.java:3147)
at android.app.ActivityThread.handleStopActivity(ActivityThread.java:3234)
at android.app.ActivityThread.access$1100(ActivityThread.java:135)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1223)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5017)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
at dalvik.system.NativeStart.main(Native Method)
Исходя из вышесказанного, похоже, что onStop (потому что я запускаю действие всплеска на onCreate) вызывается перед onResume для главной операции.
Почему это теперь вызывает проблемы в 4.4.x?