当前位置: 代码迷 >> Android >> android Timer的应用及AlarmManager的使用区别
  详细解决方案

android Timer的应用及AlarmManager的使用区别

热度:88   发布时间:2016-05-01 19:14:40.0
android Timer的使用及AlarmManager的使用区别

Timer的使用:

final Handler handler = new Handler() {
?????public void handleMessage(Message msg) {
??if (msg.what == 0) {

?????// 要做的事情

}else{return;}
?????}
????};
????new Timer().schedule(new TimerTask() {
[email protected]
?????public void run() {
??????Message message = new Message();
??????message.what = 0;
??????handler.sendMessage(message);
?????}
????}, 定时多长毫秒数启动,?间隔多长毫秒数再次启动);

Timer个人感觉不是蛮准..屏幕亮着的时候还是准的,当屏幕休眠 待机的时候 貌似不走了。。?

?

AlarmManager的使用,定时启动一个service:

?Intent intent = new Intent();
??intent.setClass(SmsService.this, BackGroud.class);
??AlarmManager alarmManager = (AlarmManager) getSystemService(Service.ALARM_SERVICE);
??final PendingIntent pi = PendingIntent.getService(SmsService.this, 0,
????intent, 0);
??alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, 0, 60000, pi);

一分钟启动一次BackGroud服务 AlarmManager 是闹铃组件 可以一直执行..无论程序启动还是待机

?

?