Hallo Ich verwende den folgenden Code, um ein Ereignis zu meinem Android-Kalender mit Intent hinzuzufügen.CalendarContract.Events.CALENDAR_ID speichert das Ereignis nicht in der angegebenen Calendar_Id in Android mit Intent
Calendar cal = Calendar.getInstance();
Intent intent = new Intent(Intent.ACTION_INSERT); // Even Tried Intent.ACTION_EDIT
intent.setType("vnd.android.cursor.item/event");
intent.putExtra("beginTime", cal.getTimeInMillis());
intent.putExtra("allDay", false);
intent.putExtra("rrule", "FREQ=DAILY");
intent.putExtra("endTime", cal.getTimeInMillis()+60*60*1000);
intent.putExtra("title", mtodoText);
intent.putExtra(CalendarContract.Events.CALENDAR_ID,3);
startActivity(intent);
Aber das Problem ist, dass dieses Ereignis nicht gespeichert oder erstellt zum calendar_id = 3, aber trotz, dass sie die calendar_id = 1 erstellt wird ich den folgenden Code bin mit all meinem Kalender abrufen Veranstaltungen, Und wenn ich die Log-Katze Ausgabe überprüfen es zeigt das Ereignis in calendar_id erstellt 1.
Uri EVENTS_URI = Uri.parse(getCalendarUriBase(true) + "events");
String sSelection = "((" + CalendarContract.Events.DELETED + " != 1))";
/*String sSelection = "((" + CalendarContract.Events.CALENDAR_ID + " = 3) AND ("
+ CalendarContract.Events.DELETED + " != 1))";*/
cur = getActivity().getContentResolver().query(EVENTS_URI, null, sSelection, null, "_id");
if(cur!=null){
while (cur.moveToNext()) {
String taskname=cur.getString(cur.getColumnIndex(CalendarContract.Events.TITLE));
String taskdate=cur.getString(cur.getColumnIndex(CalendarContract.Events.DTSTART));
String s_id=cur.getString(cur.getColumnIndex(CalendarContract.Events._ID));
String taskstatusflag=cur.getString(cur.getColumnIndex(CalendarContract.Events.HAS_ALARM));
Log.e("Title:", "taskname: " + taskname);
Log.e("DTSTART","taskdate: " + taskdate);
Log.e("_ID","s_Id: "+ s_id);
Log.e("HAS ALARM", "taskstatusflag: " + taskstatusflag);
Log.e("Calender ID:",cur.getString(cur.getColumnIndex(CalendarContract.Events.CALENDAR_ID))+"");
}
}
Mein Logcat ist wie folgt aufgeteilt: -
05-31 17:17:54.039 6518-6518/com.myapp E/Title:﹕ taskname: test1
05-31 17:17:54.039 6518-6518/com.myapp E/DTSTART﹕ taskdate: 1464608459000
05-31 17:17:54.039 6518-6518/com.myapp E/_ID﹕ s_Id: 22162
05-31 17:17:54.039 6518-6518/com.myapp E/HAS ALARM﹕ taskstatusflag: 0
05-31 17:17:54.039 6518-6518/com.myapp E/Calender ID:﹕ 1
05-31 17:17:54.039 6518-6518/com.myapp E/Title:﹕ taskname: test Cal 3
05-31 17:17:54.039 6518-6518/com.myapp E/DTSTART﹕ taskdate: 1464684678000
05-31 17:17:54.039 6518-6518/com.myapp E/_ID﹕ s_Id: 22163
05-31 17:17:54.039 6518-6518/com.myapp E/HAS ALARM﹕ taskstatusflag: 0
05-31 17:17:54.039 6518-6518/com.myapp E/Calender ID:﹕ 1
05-31 17:17:54.039 6518-6518/com.myapp E/Title:﹕ taskname: test guest
05-31 17:17:54.039 6518-6518/com.myapp E/DTSTART﹕ taskdate: 1464694253000
05-31 17:17:54.039 6518-6518/com.myapp E/_ID﹕ s_Id: 22164
05-31 17:17:54.039 6518-6518/com.myapp E/HAS ALARM﹕ taskstatusflag: 0
05-31 17:17:54.039 6518-6518/com.myapp E/Calender ID:﹕ 1
05-31 17:17:54.039 6518-6518/com.myapp E/Title:﹕ taskname: test Cal 3
05-31 17:17:54.039 6518-6518/com.myapp E/DTSTART﹕ taskdate: 1464694676000
05-31 17:17:54.039 6518-6518/com.myapp E/_ID﹕ s_Id: 22165
05-31 17:17:54.039 6518-6518/com.myapp E/HAS ALARM﹕ taskstatusflag: 0
05-31 17:17:54.039 6518-6518/com.myapp E/Calender ID:﹕ 1
05-31 17:17:54.039 6518-6518/com.myapp E/Title:﹕ taskname: test Cal 33
05-31 17:17:54.039 6518-6518/com.myapp E/DTSTART﹕ taskdate: 1464695268000
05-31 17:17:54.039 6518-6518/com.myapp E/_ID﹕ s_Id: 22166
05-31 17:17:54.039 6518-6518/com.myapp E/HAS ALARM﹕ taskstatusflag: 0
05-31 17:17:54.039 6518-6518/com.myapp E/Calender ID:﹕ 1
Was shou ld ich tun, um explizit das Ereignis in Calendar_Id = 3, mit der Absicht zu erstellen.