模拟 backstack savedInstanceState 行为

Simulate backstack savedInstanceState behaviour

我想测试我的应用程序在后台放置时间过长时的状态。

当我一个接一个地打开大约 20 个应用程序时,我最后使用的应用程序(这是我正在测试的应用程序)最终终止并出现 savedInstanceState。有没有一种方法可以模拟我正在测试的应用程序的这种行为,而无需打开另外 20 个应用程序来将我的应用程序隐藏在后台堆栈中?

是的,有一种简单的方法可以做到。只需在开发人员选项下启用不保留活动。你的 activity 将在你离开后立即销毁,当你 return.

时将调用 onRestoreInstanceState()

或者,您可以强制更改配置(如方向),这也会重新创建您的 activity。这种方法的一个问题是某些 JellyBean/KitKat 版本存在模拟器无法旋转的错误。 (虽然这在设备上工作正常。)

解决方法是安装 RotateScreenOrientation.apk,它可以强制模拟器纵向或横向,但如果您可以选择 在模拟器启动时擦除用户数据