löschen Ereignis aus dem Kalender in android programmgesteuert

Suchte ich aus dem internet ein viel und versucht, viele Beispiele . Kann ich erfolgreich Termin hinzufügen, um den Kalender über meine Anwendung, aber ich kann nicht löschen, dieses Ereignis programmgesteuert. Hier sind die Beispiele, die ich versucht habe, die kann ich nicht am Ende ein erfolgreiches Ergebnis .

Token[1] ist die Ereignis-id.

1)

  Uri eventsUri = Uri.parse(getCalendarUriBase()+"events");
  Uri eventUri = ContentUris.withAppendedId(eventsUri, Long.parseLong(tokens[1]));
  getContentResolver().delete(eventUri, null, null); 

2)

 ContentResolver cr = FlightOperationsCancelTicketFee.this.getContentResolver();
 Uri EVENTS_URI =    Uri.parse("content://com.android.calendar/" + "events");
 deleteEvent(cr, EVENTS_URI, 1);


 private void deleteEvent(ContentResolver resolver, Uri eventsUri, int calendarId) 
 {
     Cursor cursor;
     if (android.os.Build.VERSION.SDK_INT <= 7) 
     { 
         cursor = resolver.query(eventsUri, new String[]{ "_id" }, "Calendars_id=" + calendarId, null, null);
     } 
     else 
     { 
         cursor = resolver.query(eventsUri, new String[]{ "_id" }, "calendar_id=" + calendarId, null, null);
     }
     while(cursor.moveToNext()) 
     {
         long eventId = cursor.getLong(cursor.getColumnIndex("_id"));
         resolver.delete(ContentUris.withAppendedId(eventsUri, eventId), null, null);
     }
     cursor.close();
 }

3)

 ContentResolver cr = getContentResolver();
 String calUriString = "content://com.android.calendar/events";
 Uri cal=Uri.parse(calUriString);
 String[] EVENT_PROJECTION=new String[]{"calendar_id","title","dtstart","_id"};


 Uri eventsUri = Uri.parse(getCalendarUriBase()+"events");
 Uri eventUri =ContentUris.withAppendedId(eventsUri, Long.parseLong(tokens[1]));
 String reminderUriString = "content://com.android.calendar/reminders";
 Uri remUri =Uri.parse(reminderUriString);
     cr.delete(remUri, "event_id="+Commons.event_id, null);
 cr.delete(eventUri, null, null);

4)

   Uri eventsUri = Uri.parse(getCalendarUriBase()+"events");
   Uri eventUri = ContentUris.withAppendedId(Events.CONTENT_URI, Long.parseLong(tokens[1]));
   getContentResolver().delete(eventUri, null, null);

Keines der obigen funktioniert . Ich brauche Hilfe . Danke ..
Edit : ich denke ich kann nicht senden Sie die richtigen Kontext ist es eine Möglichkeit, um Rahmen über gemeinsame Vorlieben ? Jedoch , es verfolgt nur die String-und Int-Werte . Gibt es eine andere Möglichkeit, so etwas zu tun ?

InformationsquelleAutor sesamoslu | 2013-06-11
Schreibe einen Kommentar