Android 低内存杀手和应用程序返回堆栈

Android low memory killer & application back stack

Android系统可能会决定在系统内存不足时删除一个应用程序进程,以便回收资源用于更重要的工作(即启动属于另一个应用程序的服务)。但是,我不确定 Android 系统是否可以在不触及相应应用程序进程的情况下仅删除应用程序任务(返回堆栈)?

如果可能,系统也可能通过调用每个 onDestroy() 回调来销毁返回堆栈活动。那么,我们如何才能像在服务中捕获它一样捕获此任务删除(通过 onTaskRemoved)

谢谢

当 Android 想要回收资源时(或者只是因为 Android 喜欢整理),它通常会终止所有 OS 未托管前台活动的进程或前台服务。 Android 通过实际终止 OS 进程来执行此操作,因此 onDestroy() 不会在那些 OS 进程中处于活动状态的任何组件上调用。您不会收到关于此的警告,因此无法 "catch" 这种行为。