我的活动包含从互联网上检索的数据。我希望活动每5分钟自动刷新一次内容。实施它的最佳方法是什么?我应该使用java的Timer和TimerTask吗?
感谢。
答案 0 :(得分:1)
您需要设置闹钟以定期触发,一旦闹钟触发(broadcastreceiver),请确保它在您的适配器上调用notifiyDataSet,这样系统将自动重建您的listview(如果您使用的话)
这是一个示例代码,用于设置从现在开始X分钟发出警报
Intent intent = new Intent(this, WeatherRefreshService.class);
PendingIntent sender = PendingIntent.getService(this, 0, intent, 0);
// We want the alarm to go off 60 seconds from now.
long firstTime = SystemClock.elapsedRealtime();
firstTime += REPEATING_ALARM_INTERVAL_IN_MINUTES * 60 * 1000;
// Schedule the alarm!
AlarmManager am = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
am.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, firstTime,
REPEATING_ALARM_INTERVAL_IN_MINUTES * 60 * 1000, sender);
此示例使用PendingIntent作为服务,但如果您愿意,也可以将其更改为广播。