イベントを取得するために、Android のイベント テーブルにクエリを実行しています。
String[] projection = new String[] { "calendar_id", "title", "description",
"dtstart", "dtend", "eventLocation" };
Cursor cursor = cr.query(Uri.parse("content://com.android.calendar/events"),
projection,
null,
null,
null);
これにより、すべてのイベントが返されます。しかし、今では、2013 年 4 月 3 日から 2013 年 7 月 3 日までの特定の期間のイベントのみが必要です。とをどのように使用selection
しselectionArgs[]
ますか? 私はこれを試しました
String selection = "((dtstart <= ?) AND (dtend >= ?))";
String[] selectionArgs = new String[] {startString, endString};
しかし、何も返されません。私の疑問は 1. Where 句は機能しますか? startDate と endDate は最初に long (ミリ秒) に変換され、次に String に変換されてからテーブルに格納されるためです。では、文字列の長い値を比較するにはどうすればよいでしょうか。toNumber()
sqlite には機能がありません。2.合格する場合selectionArgs
、startString
どのendString
形式にする必要がありますか?