Отмена всех выставочных локальных уведомлений на iOS - PullRequest
0 голосов
/ 25 ноября 2018

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

Это код, который я написал:

const localNotification = {
  title: 'test',
  body: 'test body',
  ios: {
    sound: true
  }
};

let t = new Date();
t.setSeconds(t.getSeconds() + 10);

const schedulingOptions = {
  time: t, // (date or number) — A Date object representing when to fire the notification or a number in Unix epoch time. Example: (new Date()).getTime() + 1000 is one second from now.
  repeat: 'minute'
};

Notifications.scheduleLocalNotificationAsync(localNotification, schedulingOptions);

Затем я начал получать то же самоеуведомление каждый раз, когда приложение находится в фоновом режиме.

Я удалил этот фрагмент кода, чтобы использовать вместо него Notifications.presentLocalNotificationAsync(), и ожидал, что предыдущее уведомление перестанет появляться, поскольку Notifications.scheduleLocalNotificationAsync() никогда не вызывается нигде во всем приложении.

На Android я перезагрузил телефон, и уведомление больше не появляется, но на iOS даже после перезагрузки и переустановки экспо я получаю одно и то же запланированное уведомление.

Я пытался позвонить Notifications.cancelAllScheduledNotificationsAsync() сне повезло.

...