无论是否有足够的资源,是否有 API 或命令强制 Android 系统回收所有后台活动?以及如何检查所有活动的状态以检查活动是否实际被杀死?
有一个叫做killBackgroundProcesses()的API,但是这个API被整个进程杀死了,我想知道如何只杀死一些活动而不杀死整个进程。
正如下面的 android 开发指南页面所说,我正在寻找第一种方法。
如果一个活动被暂停或停止,系统可以通过要求它完成或简单地终止其进程来从内存中删除该活动。
无论是否有足够的资源,是否有 API 或命令强制 Android 系统回收所有后台活动?以及如何检查所有活动的状态以检查活动是否实际被杀死?
有一个叫做killBackgroundProcesses()的API,但是这个API被整个进程杀死了,我想知道如何只杀死一些活动而不杀死整个进程。
正如下面的 android 开发指南页面所说,我正在寻找第一种方法。
如果一个活动被暂停或停止,系统可以通过要求它完成或简单地终止其进程来从内存中删除该活动。
是的,有一种方法:
设置 -> 开发者选项 -> 应用程序 -> 不要保留活动
选中该框,您就可以开始了。
干杯。
我不这么认为 Android 会为您提供活动在后台的信息(即处于暂停或停止状态)。即使 Activity Stack 也会让您访问 Top 的活动。
可能的解决方案: 1. 如果你想销毁服务,最好在 startActivity() 方法之后调用 finish() 。2.如果要定期销毁所有后台活动。您应该实现自己的活动堆栈。在新活动开始时 pushToStack() 和 popFromStack() 然后是 activity.finish();