Calendar beginTime = Calendar.getInstance();
beginTime.set(2012, 0, 19, 7, 30);
Calendar endTime = Calendar.getInstance();
endTime.set(2012, 0, 19, 8, 30);
Intent intent = new Intent(Intent.ACTION_INSERT)
.setData(Events.CONTENT_URI)
.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, beginTime.getTimeInMillis())
.putExtra(CalendarContract.EXTRA_EVENT_END_TIME, endTime.getTimeInMillis())
.putExtra(Events.TITLE, "Yoga")
.putExtra(Events.DESCRIPTION, "Group class")
.putExtra(Events.EVENT_LOCATION, "The gym")
.putExtra(Events.AVAILABILITY, Events.AVAILABILITY_BUSY)
.putExtra(Intent.EXTRA_EMAIL, "rowan@example.com,trevor@example.com");
startActivity(intent);
private static final String CALENDAR_EVENTS_URI = "content://com.android.calendar/events";
private static final String CALANDER_URL = "content://com.android.calendar/calendars";
public static int insertCalendar(Context context, String title, String desc, long startMillis, long endMillis) {
final int FAIL_CODE = -1;
String calendarId;
Cursor userCursor = context.getContentResolver().query(Uri.parse(CALANDER_URL), null, null, null, null);
if (userCursor != null && userCursor.getCount() > 0) {
userCursor.moveToLast();
calendarId = userCursor.getString(userCursor.getColumnIndex("_id"));
userCursor.close();
} else {
showShortToast("没有账户,添加日历行程失败");
return FAIL_CODE;
}
ContentValues values = new ContentValues();
values.put(Events.DTSTART, startMillis);
values.put(Events.DTEND, endMillis);
values.put(Events.TITLE, title);
values.put(Events.DESCRIPTION, desc);
values.put(Events.CALENDAR_ID, calendarId);
values.put(Events.EVENT_TIMEZONE, "Asia/Shanghai");
Uri uri = context.getContentResolver().insert(Uri.parse(CALENDAR_EVENTS_URI), values);
String eventID = uri.getLastPathSegment();
Log.e("eventID", "insertCalendar : eventID = " + eventID);
if (!TextUtils.isEmpty(eventID)) {
return Integer.valueOf(eventID);
}
return FAIL_CODE;
}
/***
* 根据title和desc来删除取消某个日历行程
*
* @return true则取消成功
*/
public static boolean cancelCalendar(Context context, String title, String desc) {
if (ActivityCompat.checkSelfPermission(context, permission.WRITE_CALENDAR) != PackageManager.PERMISSION_GRANTED) {
return false;
}
String selection = "((" + Events.TITLE + " = ?) AND (" + Events.DESCRIPTION + " = ?))";
String[] selectionArgs = new String[]{title, desc};
int rows = context.getContentResolver().delete(Uri.parse(CALENDAR_EVENTS_URI), selection, selectionArgs);
// Log.e("rows", "Rows deleted: " + rows);
return rows > 0;
}
/***
* 根据eventID来删除取消某个日历行程
*
* @return true则取消成功
*/
public static boolean cancelCalendar(Context context, long eventID) {
if (ActivityCompat.checkSelfPermission(context, permission.WRITE_CALENDAR) != PackageManager.PERMISSION_GRANTED) {
return false;
}
Uri deleteUri = ContentUris.withAppendedId(Uri.parse(CALENDAR_EVENTS_URI), eventID);
int rows = context.getContentResolver().delete(deleteUri, null, null);
// Log.e("rows", "Rows deleted: " + rows);
return rows > 0;
}
转自:http://www.jcodecraeer.com/a/anzhuokaifa/developer/2013/0311/1004.html
http://www.cnblogs.com/wblyuyang/p/4050377.html
http://www.voidcn.com/blog/omayyouhappy/article/p-6002608.html
http://www.cnblogs.com/wblyuyang/p/4050377.html