Loaders vs. Asynctask vs. others

时间:2013-07-30 11:18:44

标签: android

在我的应用中,我需要使用服务器中的一些数据更新数据库。不需要立即向用户显示数据。如果在下次使用应用程序时向用户显示新数据,也可以。由于此操作,现在没有需要更新的UI组件。所以,当应用程序运行时,我只需要在后台从服务器获取一些数据。

目前我在一个活动中使用Asynctask。但它不能很好地处理配置更改。所以,我正在阅读一些内容并遇到了一些选择:

  1. 使用装载程序
  2. 使用碎片
  3. 在片段中使用Asynctask
  4. 使用静态Asynctask
  5. 我对此有点新意,我很困惑什么是我的要求的最佳实现方法。请建议

1 个答案:

答案 0 :(得分:0)

以防它可能对某人有所帮助。我为解决这个问题所做的是:

使用警报管理器设置重复警报,该警报将以特定间隔调用服务以获取数据。类似下面代码的东西在应用程序第一次运行时调用。

Intent i = new Intent(WordListActivity.this, NewData.class);
            PendingIntent pint = PendingIntent.getService(
                    WordListActivity.this, 0, i, 0);
            alarm = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
            alarm.setRepeating(AlarmManager.RTC, cal.getTimeInMillis() + 10000,
                    gap, pint);