0
我想按标题或说明在Android日历API Instances
表中搜索事件。但是由于API,我无法从表中获取所有实例。 CalendarContract.Instances
有CONTENT_SEARCH_URI
。有人知道如何使用它吗?在Android日历中搜索实例
我想按标题或说明在Android日历API Instances
表中搜索事件。但是由于API,我无法从表中获取所有实例。 CalendarContract.Instances
有CONTENT_SEARCH_URI
。有人知道如何使用它吗?在Android日历中搜索实例
以下是CONTENT_SEARCH_URI
以及如何使用它。
CONTENT_SEARCH_URI
= content://com.android.calendar/instances/search
如果你想使用它,添加3个参数:begin
以毫秒计,end
以毫秒和search
为String。
Uri.Builder builder = CalendarContract.Instances.CONTENT_SEARCH_URI.buildUpon();
builder.appendPath(Long.toString(startDate));
builder.appendPath(Long.toString(endDate));
builder.appendPath(searchString);
Uri uri = builder.build();
的路径将是content://com.android.calendar/instances/search/[your begin]/[your end]/[your search]
如果您的查询与此Uri
,Android可让此SQL:
SELECT Instances._id AS _id, Instances.event_id AS event_id,
title, description, eventLocation
FROM (Instances INNER JOIN view_events AS Events ON
(Instances.event_id=Events._id))
LEFT OUTER JOIN Attendees ON (Attendees.event_id=Events._id)
WHERE (begin<=? AND end>=?)
GROUP BY Instances._id
HAVING (title LIKE ? ESCAPE "#"
OR description LIKE ? ESCAPE "#"
OR eventLocation LIKE ? ESCAPE "#"
OR group_concat(attendeeEmail) LIKE ? ESCAPE "#"
OR group_concat(attendeeName) LIKE ? ESCAPE "#")