- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在尝试使用 Android 的新日历 API 来读取今天的所有日历事件。我无法在数据库查询中找到正确的选择以返回所有事件。似乎所有重复发生的和全天发生的事件都被排除在选择之外。哪些选择参数允许我从日历 API 获取今天的所有事件?
这是我目前的尝试:
Cursor cur = null;
String selection = "((" + CalendarContract.Events.DTSTART
+ " >= ?) AND (" + CalendarContract.Events.DTEND + " <= ?))";
Time t = new Time();
t.setToNow();
String dtStart = Long.toString(t.toMillis(false));
t.set(59, 59, 23, t.monthDay, t.month, t.year);
String dtEnd = Long.toString(t.toMillis(false));
String[] selectionArgs = new String[] { dtStart, dtEnd };
cur = c.getContentResolver().query(CalendarContract.Events.CONTENT_URI,
null, selection, selectionArgs, null);
我不确定如何扩大选择或添加选择以获得重复事件和全天事件。任何帮助,将不胜感激。
最佳答案
要获取今天的所有事件,包括重复发生的事件,您需要使用 Instances 表,即
Uri.Builder eventsUriBuilder = CalendarContract.Instances.CONTENT_URI
.buildUpon();
ContentUris.appendId(eventsUriBuilder, timeNow);
ContentUris.appendId(eventsUriBuilder, endOfToday);
Uri eventsUri = eventsUriBuilder.build();
Cursor cursor = null;
cursor = mContext.getContentResolver().query(eventsUri, columns, null, null, CalendarContract.Instances.DTSTART + " ASC");
请注意,您必须将时间限制附加到事件 uri,不能以任何其他方式排序。
为了也包括全天事件,只需将搜索范围扩大到前一天晚上 11:59 和今晚 12:00。
关于android - 使用 CalendarContract 阅读所有今天的事件 - Android 4.0+,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10133616/
我有一个同步适配器来处理同步日历和事件。我能够很好地删除正常事件。但是每当我删除一个重复发生的事件时,我日历上的所有事件都会消失。 我注意到的一件事是,每当我删除一个重复发生的事件时,Instance
通过 CalendarContract 查询时,如何找到事件的文本颜色?我看到有一列 DISPLAY_COLOR,它似乎可以可靠地提供背景颜色。在过多的 CalendarContract 表中,我没有
我正在使用以下代码向日历添加事件 Intent intent = new Intent(Intent.ACTION_INSERT); intent.setType("vnd.andro
我正在尝试创建一个应用程序,它将从设备上的日历应用程序中获取 Events 和 Attendees 的详细信息。 我面临的问题是: 1).在许多 Activity 中,标题和参加者不匹配。 2).在许
我找不到将异常(exception)日期插入重复事件的方法。 上下文 我正在解析一个带有事件的 .ics 文件(ical 格式)成功。这是.ics BEGIN:VCALENDAR PRODID:-//
标题说明了一切:CalendarContract.EventsColumns.CUSTOM_APP_URI 的用途是什么? 我问是因为我正在寻找一个地方,我的应用程序可以将一些特定于应用程序的数据填充
我一直在编写一个类来生成内容以在android设备上测试应用程序,但我一直遇到此错误。我对Java还是很陌生,所以我不太习惯解释这些运行时错误。任何帮助将不胜感激!我认为我的injectCalenda
我正在查询我的日历并显示所有事件结果。当我尝试解析值 CalendarContract.Events.DURATION 时,我得到的是 RFC2445 字符串格式。 例如,我收到“P15M”,我知道这
我的应用程序需要将事件添加到内部电话日历中的功能。在 API 14 中,可以通过 CalendarContract 和如下代码一样。 API 8 中的替代方案是什么?或者是否可以检测代码中的 API
我正在使用 CalendarContract.Instances 获取一组日历事件。一般来说,我的查询工作正常。但是,“假期”日历中事件的开始和结束时间在错误的时区返回。我的一个个人日历中的事件都有正
我正在尝试使用 Android 的新日历 API 来读取今天的所有日历事件。我无法在数据库查询中找到正确的选择以返回所有事件。似乎所有重复发生的和全天发生的事件都被排除在选择之外。哪些选择参数允许我从
我的应用使用 Events._ID 在 CalendarContract.Events 中查询特定事件。在尝试在 5.0 设备上运行它之前,它运行良好,现在我得到一个异常 01-12 17:28:50
android 4 推出后,引入CalendarContract 类来编写设备日历中的事件。但是,如果我使用 API 级别 8 创建了我的应用程序,现在我想在使用 API 级别 8 完成的项目中使用此
我在使用 CalendarContract 测试插入事件时犯了一个错误。 我在事件插入中设置了自己的 _ID。 values.put(Events._ID, "156498713465"); 现在,我
我正在尝试使用我的应用程序读取和写入日历。所以我正在使用 android developer guide 中的代码: 我复制了这个: // Run query Cursor cur = null; C
我正在尝试使用 CalendarContract 以编程方式设置日历事件。我可以在输入特定日期时设置事件。我想要的是,当用户选择一周中的特定日期(而不是输入日期)时,我想从当前日期开始每个月/每周输入
我是一名优秀的程序员,十分优秀!