android 打开日历设定行程活动

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值