创建的日历在设备的日历应用程序中不可见

时间:2013-10-20 19:16:31

标签: android android-calendar

我是Android开发的新手

我正在尝试创建一个应该可以从我创建的应用程序和我的Android设备的日历应用程序访问的日历。

让我先给我的设备信息:

Android版:4.3
API级别的申请:18
装置:华硕nexus 7

我正在使用下面的代码创建日历

ContentValues values = new ContentValues();
    values.put(
    Calendars.ACCOUNT_NAME,  "xyz@gmail.com");
    values.put(
          Calendars.ACCOUNT_TYPE,  CalendarContract.ACCOUNT_TYPE_LOCAL);
    values.put(
            Calendars.NAME,  "Test Calendar");

    values.put(
            Calendars.CALENDAR_DISPLAY_NAME,  "abc calendar");
    values.put(
          Calendars.CALENDAR_COLOR,  Color.YELLOW );
    values.put(
          Calendars.CALENDAR_ACCESS_LEVEL,  Calendars.CAL_ACCESS_OWNER);
    values.put(
            Calendars.OWNER_ACCOUNT,"xyz@gmail.com");
    values.put(
            Calendars.CALENDAR_TIME_ZONE, TimeZone.getDefault().getID());
    values.put(Calendars.VISIBLE, 1);
    Uri.Builder builder = 
          CalendarContract.Calendars.CONTENT_URI.buildUpon(); 
    builder.appendQueryParameter(
          Calendars.ACCOUNT_NAME,"xyz@gmail.com");
    builder.appendQueryParameter(
          Calendars.ACCOUNT_TYPE,  CalendarContract.ACCOUNT_TYPE_LOCAL);
    builder.appendQueryParameter(
          CalendarContract.CALLER_IS_SYNCADAPTER,  "true");
    Uri uri =this.cordova.getActivity().getContentResolver().insert(builder.build(), values);

    try {
        return calendarArray.put(new JSONObject().put("calendarURI", uri));
    } catch (JSONException e) {
        e.printStackTrace();
    }
    return null;

当我在应用程序中运行代码时,日历会被创建,但在我检查设备之后,当时没有创建新的日历。

我尝试设置值为1的Calendars.VISIBLE属性,并且还在线搜索解决方案,但什么都没有。

代码已从link

复制

请帮帮我。

1 个答案:

答案 0 :(得分:1)

这是我的错,日历在我开始创建应用程序之前的同一个名称下添加了9次。