【发布时间】:2011-12-16 23:45:18
【问题描述】:
当我的 Android 应用程序终止时,是否有某种 onTerminate() 方法可以让我进行一些清理(我想清除一些 SharedPreferences)?
我有一个活动保持几个数字的运行平均值,我将其存储在 SharedPreference 中。我希望这个平均值在应用程序运行时持续(用户可以在不同的活动之间移动),所以我无法在 onDestroy() 上为该特定活动清除它。一旦应用程序即将退出,我需要能够清除它。
我该怎么做?
【问题讨论】:
-
考虑到在应用关闭之前不能保证除了
onPause()之外的任何事件.. android 是否支持Runtime.addShutdownHook并且它是否像您期望的那样工作? -
只要至少有一项活动还存在,您是否希望您的运行平均值不清晰?如果您点击主页按钮,应该立即清除平均值还是仅在操作系统最终杀死您的活动时才清除?如果用户只是重新开始您的主要活动,您可以清除偏好吗?如果您只希望这些平均值在您的应用运行时持续存在,您是否考虑过使用服务?
标签: java android sharedpreferences android-activity