好吧,所以我做了一个应用程序,在谷歌日历中添加事件,它工作正常,但之后我想添加提醒,所以我把代码提醒,但当我测试它我得到错误:column 'method' is invalid
这是我的代码:
`ContentResolver cr = getApplicationContext().getContentResolver();
ContentValues values = new ContentValues();
long startMillis = 0;
long endMillis = 0;
Calendar beginTime = Calendar.getInstance();
beginTime.set(EndAn, EndLuna, EndZi, EndOra, 00);
startMillis = beginTime.getTimeInMillis();
Calendar endTime = Calendar.getInstance();
endTime.set(EndAn, EndLuna, EndZi, EndOra, 10);
endMillis = endTime.getTimeInMillis();
values.put(CalendarContract.Events.DTSTART, startMillis);
values.put(CalendarContract.Events.TITLE, headline);
values.put(CalendarContract.Events.DESCRIPTION, "Description");
TimeZone timeZone = TimeZone.getDefault();
values.put(CalendarContract.Events.EVENT_TIMEZONE, timeZone.getID());
values.put(CalendarContract.Events.CALENDAR_ID, 1);
values.put(CalendarContract.Events.HAS_ALARM, 1);
values.put(CalendarContract.Events.DTEND, endMillis);
values.put(CalendarContract.Reminders.MINUTES, 23);
values.put(CalendarContract.Reminders.METHOD, 4);
if (ActivityCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.WRITE_CALENDAR) != PackageManager.PERMISSION_GRANTED ||
ActivityCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.READ_CALENDAR) != PackageManager.PERMISSION_GRANTED) {
Toast.makeText(getApplicationContext(), stringPermission , Toast.LENGTH_LONG).show();
} else {
Uri uri = cr.insert(CalendarContract.Events.CONTENT_URI, values);
Uri uriContent = CalendarContract.Calendars.CONTENT_URI;
String[] projection = new String[]{
CalendarContract.Calendars._ID,
CalendarContract.Calendars.ACCOUNT_NAME,
CalendarContract.Calendars.CALENDAR_DISPLAY_NAME,
CalendarContract.Calendars.NAME,
CalendarContract.Calendars.CALENDAR_COLOR,
CalendarContract.Reminders._ID,
CalendarContract.Reminders.MINUTES,
CalendarContract.Reminders.METHOD
};
Cursor calendarCursor = managedQuery(uriContent, projection, null, null, null);
}`
所以你能告诉我我做错了什么/我需要添加/删除/修改它以便它可以工作吗?
P.S:提前致谢:D
如果您阅读Reminders and Notifications,那么您就知道您的“方法”错误是由于此行:
CalendarContract.Reminders.METHOD
使用的交付方式(见Delivery mechanisms):
所以尝试使用:
CalendarContract.Reminders.Email or
CalendarContract.Reminders.SMS or
CalendarContract.Reminders.Pop-up
(我不确定使用正确的Java格式)