我想用来AlarmManager.AlarmClockInfo
设置闹钟.
这个构造函数需要时间和PendingIntent
文档中描述的时间和:
可用于显示或编辑闹钟细节的意图.
然后setAlarmClock( )
还接受一个待定的意图,在文档中描述为:
警报响起时执行的操作
据我所知,使用的PendingIntent
通过setAlarmClock( )
,然而,又是怎样PendingIntent
使用的AlarmClockInfo
?如何用它来编辑闹钟的细节?
但是,如何使用AlarmClockInfo使用的PendingIntent以及如何使用它来编辑闹钟的详细信息?
引用自己的这本书:
最大的问题
setAlarmClock()
是它对用户可见:
用户将在其状态栏中看到闹钟图标,就好像他们已使用其设备的内置闹钟应用设置了闹钟
当用户完全滑开其通知阴影时,用户将看到警报的时间
点击通知阴影中的闹钟时间将调用
PendingIntent
您放入AlarmClockInfo
对象的闹钟时间
所以,鉴于此代码...:
static void scheduleAlarms(Context ctxt) { AlarmManager mgr= (AlarmManager)ctxt.getSystemService(Context.ALARM_SERVICE); Intent i=new Intent(ctxt, PollReceiver.class); PendingIntent pi=PendingIntent.getBroadcast(ctxt, 0, i, 0); Intent i2=new Intent(ctxt, EventDemoActivity.class); PendingIntent pi2=PendingIntent.getActivity(ctxt, 0, i2, 0); AlarmManager.AlarmClockInfo ac= new AlarmManager.AlarmClockInfo(System.currentTimeMillis()+PERIOD, pi2); mgr.setAlarmClock(ac, pi); }
(来自这个示例项目)
...当用户点击通知阴影中的时间时,EventDemoActivity
将出现.这个想法是你应该在这里提供一个活动,允许用户取消或重新安排此警报.