2017-02-24 2 views

Antwort

0

Diese SO question beschreibt das Lesen und Schreiben in den Kalender. Die wichtigsten Informationen benötigen Sie den Kalender lesen (n):

Uri uri = CalendarContract.Calendars.CONTENT_URI; 
String[] projection = new String[] { 
    CalendarContract.Calendars._ID, 
    CalendarContract.Calendars.ACCOUNT_NAME, 
    CalendarContract.Calendars.CALENDAR_DISPLAY_NAME, 
    CalendarContract.Calendars.NAME, 
    CalendarContract.Calendars.CALENDAR_COLOR 
}; 

Cursor calendarCursor = managedQuery(uri, projection, null, null, null); 

Dann müssen Sie die Daten aus dem Cursor extrahieren:

ArrayList<String> ids = new ArrayList<String>(); 
try { 
     if (cursor.getCount() > 0) { 
      while (cursor.moveToNext()) { 
       String id= cursor.getString(0); 
       calendars.add(id); 
      } 
     } 
    } catch (AssertionError ex) { /*TODO: log exception and bail*/ } 

Dann haben Sie die IDs und müssen jeden abfragen für Ereignisse. Dies ist in der angenommenen Antwort auf diese SO question beschrieben. Auch dieses github Repository hat eine Lösung. Die meisten dieser Ansätze funktionieren nur für Android-Versionen, die größer als 4.2 sind.

Verwandte Themen