Календарь Google не показывает напоминания о добавленном событии - PullRequest
0 голосов
/ 05 июля 2018

Здравствуйте. Я сохраняю события в календаре устройства и хочу установить будильник или напоминания о добавленном событии. В настоящее время он добавляет события, но не показывает напоминания или не воспроизводит сигнал тревоги.

Я ожидаю тревоги или напоминания до 5 минут с момента события.

 public static long pushAppointmentsToCalender(Activity curActivity, String title, String addInfo,
                                              String place, int status, long startDate, boolean needReminder) {
    /***************** Event: note(without alert) *******************/

    String eventUriString = "content://com.android.calendar/events";
    ContentValues eventValues = new ContentValues();
    eventValues.put("title", title);
    eventValues.put("description", addInfo);
    eventValues.put("eventLocation", place);

    long endDate = startDate + 1000 * 60 * 60; // For next 1hr

    eventValues.put("dtstart", startDate);
    eventValues.put("dtend", endDate);
    eventValues.put("eventStatus", status); // This information is
    eventValues.put("eventTimezone", "UTC +5:30");
    eventValues.put("hasAlarm", 1); // 0 for false, 1 for true

    Uri eventUri = curActivity.getApplicationContext().getContentResolver().insert(Uri.parse(eventUriString), eventValues);
    long eventID = Long.parseLong(eventUri.getLastPathSegment());

    if (needReminder) {

        String reminderUriString = "content://com.android.calendar/reminders";

        ContentValues reminderValues = new ContentValues();

        reminderValues.put("event_id", eventID);
        reminderValues.put("minutes", 5); // Default value of the
        reminderValues.put("method",1); // Alert Methods: Default(0),
        Uri reminderUri = curActivity.getApplicationContext().getContentResolver().insert(Uri.parse(reminderUriString), reminderValues);
    }

    return eventID;

1 Ответ

0 голосов
/ 05 июля 2018

Вы можете проверить пример кода в этой документации о том, как вставить событие с напоминаниями.

EventReminder[] reminderOverrides = new EventReminder[] {
    new EventReminder().setMethod("email").setMinutes(24 * 60),
    new EventReminder().setMethod("popup").setMinutes(10),
};
Event.Reminders reminders = new Event.Reminders()
    .setUseDefault(false)
    .setOverrides(Arrays.asList(reminderOverrides));
event.setReminders(reminders);

Вот дополнительная ссылка, которая может помочь: Как создавать события в API Календаря Google с Android

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...