如何在 Android 设备上导致内存不足的情况,以便我的 Activity 被销毁并且关联的 Application 类在我的应用程序处于后台时接收 onTrimMemory()。我的应用程序在后台遇到与被 Android 操作系统杀死有关的恢复问题,并且希望能够单步执行调试器中的代码,但我无法定期生成这种情况,尤其是在连接时到调试器:)
谢谢你,加里
如何在 Android 设备上导致内存不足的情况,以便我的 Activity 被销毁并且关联的 Application 类在我的应用程序处于后台时接收 onTrimMemory()。我的应用程序在后台遇到与被 Android 操作系统杀死有关的恢复问题,并且希望能够单步执行调试器中的代码,但我无法定期生成这种情况,尤其是在连接时到调试器:)
谢谢你,加里
另一种方法:
在您的设备中:
转到设置 -> 开发人员选项并选中“不保留活动”。
这将在您进入后台后立即终止您的活动。
您通常可以通过将您的应用程序置于后台,然后启动 10-20 个应用程序(取决于设备)来触发此操作。这最终将导致您的进程被终止,我认为这将在onTrimMemory()
回调之前。
当您的应用程序在前台时,您可以通过 shell 杀死缓存的进程
adb shell am kill-all
然后离开你的应用程序(让它去后台),很快它就会收到一个onTrimMemory()
回调。
发生这种情况是因为系统认为太多的应用程序正在死去,这应该是内存不足的情况。