我在“上创建的日历”;com.google“;在android上同步后删除

我在“上创建的日历”;com.google“;在android上同步后删除,android,calendar,google-calendar-api,android-calendar,Android,Calendar,Google Calendar Api,Android Calendar,我在android上创建了一个新日历并添加了活动 第一次同步后或几秒钟后,它将被擦除。有人能帮忙解决这个问题吗 代码: private void createCalendar(Context context, String accName) { Uri calUri = CalendarContract.Calendars.CONTENT_URI; final ContentValues v = new ContentValues(); v.put(CalendarCon

我在android上创建了一个新日历并添加了活动

第一次同步后或几秒钟后,它将被擦除。有人能帮忙解决这个问题吗

代码:

private void createCalendar(Context context, String accName) {
    Uri calUri = CalendarContract.Calendars.CONTENT_URI;
    final ContentValues v = new ContentValues();
    v.put(CalendarContract.Calendars.ACCOUNT_NAME, accName);
    v.put(CalendarContract.Calendars.NAME, CALENDAR_NAME);
    v.put(CalendarContract.Calendars.CALENDAR_DISPLAY_NAME, CALENDAR_NAME);
    v.put(CalendarContract.Calendars.ACCOUNT_TYPE, "com.google");
    v.put(CalendarContract.Calendars.CALENDAR_COLOR, 0xEA8561);
    v.put(CalendarContract.Calendars.CALENDAR_ACCESS_LEVEL, CalendarContract.Calendars.CAL_ACCESS_OWNER);
    v.put(CalendarContract.Calendars.OWNER_ACCOUNT, accName);
    v.put(CalendarContract.Calendars.SYNC_EVENTS, 1);
    v.put(CalendarContract.Calendars.VISIBLE, 1);

    calUri = calUri.buildUpon()
            .appendQueryParameter(CalendarContract.CALLER_IS_SYNCADAPTER, "true")
            .appendQueryParameter(CalendarContract.Calendars.ACCOUNT_NAME, accName)
            .appendQueryParameter(CalendarContract.Calendars.ACCOUNT_TYPE, "com.google")
            .build();

    calUri = calUri.buildUpon().build();

    final Uri result = context.getContentResolver().insert(calUri, v);
}

不幸的是,这是日历API的一个已知问题。如果你想使用Android日历,你只有一个选择——将日历创建为本地日历并自己同步