日历事件和android中

问题描述:

我想如下创建一个应用程序alarmManager服务:日历事件和android中

用户将事件时间,并设置了一些行动,在这个时候做这样 开启手机振动模式这段时间或关闭wifi,所以我会让用户插入他的事件数据,我将它存储在Android日历上。

然后将操作保存在数据库中。我需要的是在发生日历事件时触发的服务,以便我可以捕获事件ID并将其与数据库中的操作进行比较,并执行用户需要的操作。

请帮忙吗?

+0

你应该更清楚地解释你的任务,用较短的短语,可能通过以下步骤进行构建:例如,1,2,3 ...以及用粗体标出重要词语。否则,很难阅读你的问题。 – 2012-01-17 15:29:56

+0

我想在日历中存储的事件发生时执行操作,所以我希望收听日历的事件以及事件发生时我做事的人 – user935143 2012-01-17 19:05:46

据我所知,我可能是错的,因为日历并没有真正在操作系统级别实现,所以您不能直接绑定到您在手机上看到的事件触发器(提醒等)事件即将到来。

或多或少,手机本身的日历应用程序由设备制造商(HTS,摩托罗拉等)实施,这意味着事件触发BroadCast接收器(或服务)不是您可以连接的东西。

这将在Ice Cream Sandwich中有所不同,我相信随着日历API的推出....目前还没有很多4.0的设备。

这个广播接收机至少在我的手机上工作(没有测试过其他人)。

A.在代码

IntentFilter inFilter = new IntentFilter(CalendarContract.ACTION_EVENT_REMINDER); 
    inFilter.addDataScheme("content"); 
    registerReceiver(myRemindersReceiver, inFilter); 

看在调试器这个广播消息中的manifest.xml使用接收器

<receiver android:name=".MyRemindersReceiver" > 
      <intent-filter> 
       <data android:scheme="content" /> 
       <action android:name="android.intent.action.EVENT_REMINDER" /> 
      </intent-filter> 
</receiver> 

B.使用接收器,似乎这个消息有没有额外的束。然而它在intent.getData()中有一个Uri,我认为它是日历事件的Uri。所以你需要查询这个uri来获得更多有关剩余事件的信息。