不保留活动”(Don't keep activities)是 Android 开发者选项中一个非常实用的测试功能,但它主要用于测试特定类型的问题,而不是通用的崩溃检测工具。
🔍 主要作用
测试 Activity 生命周期和状态恢复能力:
当用户离开 Activity 时(按 Home 键或跳转到其他应用),系统会立即销毁该 Activity
测试应用在 Activity 被销毁后重建时,是否能正确恢复数据状态
验证 onSaveInstanceState() 和 onRestoreInstanceState() 是否正常工作
⚠️ 能发现的典型问题
数据丢失:Activity 重建后用户输入的数据消失
空指针异常:重建时依赖未保存的成员变量
资源泄漏:未正确释放资源导致重建失败
配置恢复失败:横竖屏切换类似场景的适配问题
后台返回崩溃:从其他应用返回时应用崩溃
❌ 局限性
不能发现所有崩溃:只能暴露与 Activity 生命周期相关的崩溃
可能误报:正常应用设计可能就不需要保留某些临时状态
不是压力测试:不如内存压力测试或 ANR 检测全面