Android:服务停止时安全地保存数据

时间:2017-07-15 18:07:21

标签: android service

我有一项服务绑定到一项活动。该服务设置为随任务停止。我希望在此服务停止时将一些数据保存到文件中。我编写了一个保存数据的函数,并在onDestroy()onLowMemory()onTaskRemoved()中调用此函数。 这是代码 -

@Override
public void onTaskRemoved(Intent rootIntent) {
     saveData();
     super.onTaskRemoved(rootIntent);
 }

@Override
public void onLowMemory() {
    saveData();
    super.onLowMemory();
 }

@Override
public void onDestroy() {
  saveData();
  super.onDestroy();
}

但是,当用户从最近的应用列表中清除应用时,不会调用此方法。在这种情况下,服务会停止,但我的数据不会写入文件。

有什么方法可以确保在每种可能的情况下都将数据写入文件?

1 个答案:

答案 0 :(得分:0)

如果要在用户清除应用列表缓存后保存数据,则需要将数据保存在sqlite db或realm等内。否则数据将被删除。