关于闹钟源码中是如何设置两个闹钟的问题

最近一周一直看闹钟程序的源码,不明白源码中如何设置两个闹钟的  今天若有所悟!

先谈谈如何实现设置两个闹钟吧

AlarmManager am = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
PendingIntent sender = PendingIntent.getBroadcast(context, 0, new Intent(ALARM_ALERT_ACTION), PendingIntent.FLAG_CANCEL_CURRENT);

 PendingIntent.getBroadcast方法的第二个参数为为响应请求吗,要设置两个闹钟,只要把第二个参数设为不同的值即可

源码中实现

源码中把所有的设置的闹钟信息都保存在一个名为alarms.db的数据库中,在设置了一个闹钟后程序只是把闹钟的相关设置保存到数据库中,并没有激活一个闹钟。当前活动的闹钟服务只有一个或者没有,当一个闹钟提示完成以后会调用setNextAlert(context);方法来设置第二个闹钟

相关推荐