Android API 24:分屏 - activity 在被销毁时不启动返回堆栈的 activity
Android API 24 : split screen - activity does not start back stack's activity when destroyed
几天来我一直在为这个错误而苦苦挣扎。这个错误发生在罕见但可能的情况下,我就是找不到为什么会这样。
发生的事情是:
在分屏模式下(我的应用程序在顶部,另一个在底部),当某些 activity 退出时,返回堆栈 activity 的(在我的情况下,主要是 MainActivity) onStart()
从未被调用,分屏模式 看起来像 它已经结束,因为我的应用程序已死,但概览按钮仍然看起来像我处于分屏模式并且当我点击分屏按钮时,我的 MainActivity 的 onStart()
终于被调用,它又回到了分屏模式。
日志看起来像
MainActivity onStop()
ProblematicActivity onCreate()
...
ProblematicActivity onDestroy()
//and nothing!
在这些条件下不会发生这种情况:
- 当在非分屏模式下调用有问题的 activity,但在分屏模式下完成时。 (
resumed
和 paused
)
- 当在分屏模式下调用有问题的 activity,但我的应用程序被点击时(即我的 activity 处于
resumed
状态)
只有在以下情况下才会发生这种情况:
- 有问题activity在分屏模式下启动,我的activity没有被点击(即我的activity处于
paused
状态)
我已经彻底检查了 activity 生命周期回调(至少我是这么认为的)并多次查看日志,但我就是想不通为什么没有调用 BackStack activity。
我试过搜索,但没有太多有用的信息。有人有和我一样的experience/problem吗?
谢谢。
附加信息
我的 activity 堆栈看起来像这样
主要Activity
Activity2
Activity 1
片段 1
服务器发送我的应用启动一个功能,然后它启动Activity 2,它启动activity 1,而片段1在activity 1(用户真正看到的是片段 1) Activity & 片段被完全销毁,直到 Activity2。但是从那里,MainActivity(或者不管它是什么 activity)是不可见的,因为 AndroidSystem 从不调用 onStart
.
事实证明这是 Android OS 中的缺陷。
Google的回复如下
Hi,
We have passed this defect on to the development team and will update this issue with more information as it becomes available.
Thanks
问题link:
几天来我一直在为这个错误而苦苦挣扎。这个错误发生在罕见但可能的情况下,我就是找不到为什么会这样。
发生的事情是:
在分屏模式下(我的应用程序在顶部,另一个在底部),当某些 activity 退出时,返回堆栈 activity 的(在我的情况下,主要是 MainActivity) onStart()
从未被调用,分屏模式 看起来像 它已经结束,因为我的应用程序已死,但概览按钮仍然看起来像我处于分屏模式并且当我点击分屏按钮时,我的 MainActivity 的 onStart()
终于被调用,它又回到了分屏模式。
日志看起来像
MainActivity onStop()
ProblematicActivity onCreate()
...
ProblematicActivity onDestroy()
//and nothing!
在这些条件下不会发生这种情况:
- 当在非分屏模式下调用有问题的 activity,但在分屏模式下完成时。 (
resumed
和paused
) - 当在分屏模式下调用有问题的 activity,但我的应用程序被点击时(即我的 activity 处于
resumed
状态)
只有在以下情况下才会发生这种情况:
- 有问题activity在分屏模式下启动,我的activity没有被点击(即我的activity处于
paused
状态)
我已经彻底检查了 activity 生命周期回调(至少我是这么认为的)并多次查看日志,但我就是想不通为什么没有调用 BackStack activity。
我试过搜索,但没有太多有用的信息。有人有和我一样的experience/problem吗?
谢谢。
附加信息
我的 activity 堆栈看起来像这样
主要Activity
Activity2
Activity 1
片段 1
服务器发送我的应用启动一个功能,然后它启动Activity 2,它启动activity 1,而片段1在activity 1(用户真正看到的是片段 1) Activity & 片段被完全销毁,直到 Activity2。但是从那里,MainActivity(或者不管它是什么 activity)是不可见的,因为 AndroidSystem 从不调用 onStart
.
事实证明这是 Android OS 中的缺陷。
Google的回复如下
Hi,
We have passed this defect on to the development team and will update this issue with more information as it becomes available.
Thanks
问题link: