我有一个磁盘缓存,当应用程序关闭时我需要关闭它。最好的地方在哪里?
- 覆盖活动 onDestroy 方法并检查它是否是任务根:
@Override
protected void onDestroy () {
if (this.isTaskRoot()) {
//I only want to close it if this is the last activity of the app
CloseCache();
}
super.onDestroy();
}
根据文档, Activity.onDestroy() 可能不会在系统刚刚杀死应用程序时被调用,因此在这种情况下,这将使缓存保持打开状态。
- 使用在同一进程中运行的服务并从其 onDestroy 回调中关闭缓存?Service.onDestroy() 是否总是在进程销毁时由系统调用?
-我不知道的其他方式?