我是安卓开发新手
我正在尝试创建一个日历,它应该可以从我创建的应用程序和我的 android 设备的日历应用程序中访问。
让我先给出我的设备信息:
Android 版本:4.3
API 应用级别:18
设备:Asus 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;
当我在应用程序中运行代码时,会创建日历,但之后当我检查我的设备时,那里不会看到创建的新日历。
我尝试过将 Calendars.VISIBLE 属性设置为 1。并且还在线搜索了解决方案,但一无所获。
代码已从链接复制
请帮帮我。