首页 > 代码库 > android之Alarm

android之Alarm

Alarm和Timer不同的是Alarm是在应用程序之外操作的。即使应用程序关闭,它们也仍然能够用来激活应用程序事件或操作。

public void createAlarm(){
		//获取一个Alarm Manager的引用
		AlarmManager alarmManager = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
		//如果设备处于休眠状态,设置Alarm来唤醒设备
		int alarmType = AlarmManager.ELAPSED_REALTIME_WAKEUP;
		//10秒钟后触发设备
		long time = 10000;
		//创建能够广播和操作的Pending intent
		String ALARM_ACTION = "ALARM_ACTION";
		Intent intentfoFire = new Intent(ALARM_ACTION);
		PendingIntent alarmIntent = PendingIntent.getBroadcast(this, 0, intentfoFire, 0);
		
		//设置Alarm
		alarmManager.set(alarmType, time, alarmIntent);
	}

如何取消?

//取消
		alarmManager.cancel(alarmIntent);

如何设置重复?

可以使用Alarm Managerd 的setRepeting或setInexactRepeating方法。