您的位置:首页 > 移动开发 > Android开发

android 定时拉取数据

2015-10-21 09:20 489 查看
根据谷歌api编写

使用定时器启动服务不断拉取数据

当系统重启或者应用被杀死的情况下,Alarm定时任务会被取消

从Android4.4开始,Alarm事件默认采用非精准方式,即定时任务可能会有小范围的提前或延后,当然我们可以强制采用精准方式,而在此之前,Alarm事件都是精准方式

定时器:

PendingIntent operation = PendingIntent.getService(context, -1,
new Intent(context, CoreService.class),
PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager alarmManager = (AlarmManager) context
.getSystemService(Context.ALARM_SERVICE);
long firstTime = SystemClock.elapsedRealtime();
alarmManager.cancel(operation);

alarmManager.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP,
firstTime, 60 * 1000, operation);

服务:

/**

 * 实时下载数据

 * 

 * @author sm

 * 

 */

public class CoreService extends Service {

public CoreService()
{}

@Override
public IBinder onBind(Intent intent) {
return null;
}

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
new Thread(new Runnable() {

@Override
public void run() {
getAllInfos();
}
}).start();

return Service.START_STICKY;
}

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

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android