Android N:我的应用程序在进入多窗口模式时调用onDestroy()

时间:2016-07-11 07:56:31

标签: android

启者

我已经制作了一个全新的项目并添加了

 "android:resizeableActivity="true"
中的

然后在生命周期方法(onStart(), onResume(), onStop()...

中添加日志

之后,使用模拟器在Android N(API 24)(6.x)上运行我的应用程序。

我发现我的应用程序在前面时,长按最近的按钮进入多窗口模式,日志打印

  

的onPause() - >的onStop() - >的的onDestroy() - >在onStart() - >的onResume() - >的onPause()

这是对的吗?或者我可能会犯错误吗?

如果它是正确的,我可以检测到应用程序是否真的结束了,还是onDestroy()中的多窗口模式?

因此,我可以在进入多窗口模式时防止某些对象被破坏。

3 个答案:

答案 0 :(得分:3)

将screenLayout添加到android:manifest.xml中的configChanges可以解决问题。

答案 1 :(得分:1)

它对我有用的唯一方法是将 screenLayout smallestScreenSize 设置为 manifest.xml 中的android:configChanges

答案 2 :(得分:0)

摘自文档:

  

注意:要处理所有与多窗口相关的配置更改,请使用   “ screenLayout”和“ smallestScreenSize”。多视窗现为   在Android 7.0(API级别24)或更高版本中受支持。

因此,您应该使用

        android:configChanges="orientation|screenSize|screenLayout|smallestScreenSize"

在您的<activity清单中