我试图确定用户日历中是否存在给定事件,其中相等性由所有匹配的开始时间,结束时间,标题和位置确定。
public static final Cursor query (ContentResolver cr, String[] projection, long begin, long end, String searchQuery)
其中searchQuery是:
searchQuery A string of space separated search terms. Segments enclosed by double quotes will be treated as a single term.
我的代码大致是这样的:
long startTime = eventStartTime;
long endTime = eventEndTime;
public static final String[] EVENT_INSTANCE_PROJECTION = new String[] {
Instances._ID,
Instances.BEGIN,
Instances.END,
Instances.EVENT_ID,
Instances.TITLE,
Instances.EVENT_LOCATION
};
Cursor cursor = Instances.query(activity.getContentResolver(), EVENT_INSTANCE_PROJECTION, startTime, endTime, queryString);
如果没有queryString,则返回该时隙中的事件。 queryString应该是什么?特别是,如何使用此调用仅返回具有给定标题的该时间范围内的事件,即WHERE Instances.TITLE =' EventTitle'。或者这甚至是正确的使用方式来做到这一点?我对这个命令所期望的格式感到困惑。
看起来查询只是追加到路径,所以一个例子是:
content://com.android.calendar/instances/search/1402678800000/1402704000000/
数字是开始日期和结束日期,以毫秒为单位。