简体   繁体   中英

adding event to android calendar without showing the calendar

i have this code for adding event:

Intent calendarIntent = new Intent(Intent.ACTION_INSERT, Events.CONTENT_URI);

Calendar beginTime = Calendar.getInstance();
beginTime.set(2013,04,14,21,00,00);

Calendar endTime = Calendar.getInstance();
endTime.set(2013,04,14,21,10,00);
Intent intent = new Intent(Intent.ACTION_EDIT);
intent.setType("vnd.android.cursor.item/event");
intent.putExtra("title", "Some title");
intent.putExtra("description", "Some description");
intent.putExtra("beginTime", beginTime.getTimeInMillis());
intent.putExtra("endTime", endTime.getTimeInMillis());
startActivity(intent);

but how to insert event without open the calendar ?

thanks

you need use a ContentResolver instead Intent

ContentResolver cr = getContentResolver();
ContentValues values = new ContentValues();

Calendar beginTime = Calendar.getInstance();
beginTime.set(2013,04,14,21,00,00);

Calendar endTime = Calendar.getInstance();
endTime.set(2013,04,14,21,10,00);

values.put(Events.DTSTART, beginTime.getTimeInMillis());
values.put(Events.DTEND, endTime.getTimeInMillis());
values.put(Events.TITLE, "Some title");
values.put(Events.DESCRIPTION, "Some description");

Uri uri = cr.insert(Events.CONTENT_URI, values);

you can read more Calendar Provider

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM