Reputation: 2563
Ok, I read docs very precisely here: http://developer.android.com/guide/topics/providers/calendar-provider.html#update-event and its written something like this:
// Here is an example of an intent that sets a new title for a specified event and lets users edit the event in the Calendar.
long eventID = 208;
Uri uri = ContentUris.withAppendedId(Events.CONTENT_URI, eventID);
Intent intent = new Intent(Intent.ACTION_EDIT)
.setData(uri)
.putExtra(Events.TITLE, "My New Title");
startActivity(intent);
For me it doesn't work - it opens correct event, but it's NOT POSSIBLE to edit it - all fields are read only. Only fields what I can change are Timezone, and Reminder. Everything other is read only. Am I doing something wrong?
My API level is 14 (ICS)
Upvotes: 6
Views: 2976
Reputation: 3711
You can able edit an event in the only case you are an organizer of this event so in your case, you a not the organizer
Upvotes: 0
Reputation: 2654
Workaround for this problem: If you use Intent.ACTION_VIEW you'll at least get an activity in which you can hit the Edit button, after which you can edit the title and location and everything else (in the default calendar app anyway).
Upvotes: 3
Reputation: 11782
So I don't think you're doing anything wrong - I put together a basic implementation of the same thing via command line and the same restriction applies:
am start -a android.intent.action.EDIT --es title "New Title" content://com.android.calendar/events/1
I'm only able to edit the same fields you are - You might be better off doing a ACTION_VIEW
and letting the user decide to edit (sorry I don't have a better answer for you, that's kind of annoying)
Upvotes: 6