Я реализовал UILocalNotifications
в двух разных приложениях.Один использует Location Services, что означает, что если его убивают, он (обычно) перезапускается (так что это не такая большая проблема).Однако в другом приложении я планирую UILocalNotification
в зависимости от времени.В этом случае у меня возникла серьезная проблема.
Если я запланирую уведомление, приложение будет убито, выгнано из памяти, телефон выключен, затем снова включен, я не могу автоматически просматривать старые уведомления ""при открытии приложения.
Вот рабочий процесс, который работает (приложение работает в фоновом режиме):
- Запустить приложение;уведомление о расписании приложений;закрыть приложение;приложение теперь работает в фоновом режиме
- Получать локальное уведомление;сначала проигнорируй это;потяните выпадающее меню сверху (строка состояния);коснитесь уведомления, чтобы запустить приложение
- Результаты: приложение соответствующим образом отображает информацию в уведомлении.
Вот рабочий процесс, который не работает (приложениебольше не работает в фоновом режиме):
- Запустить приложение;уведомление о расписании приложений;закрыть приложение;приложение теперь работает в фоновом режиме
- вручную убить приложение (чтобы смоделировать мою ситуацию)
- По-прежнему получать локальное уведомление;сначала проигнорируй это;потяните выпадающее меню сверху (строка состояния);нажмите на уведомление, чтобы запустить приложение
- Результаты: приложение запускается, но метод
didReceiveLocalNotification
не вызывается.Пользователь считает, что приложение не работает.
Примечание : Я не могу даже принудительно принудительно ввести информацию, потому что, если они получили более одного уведомления, я не могу сказать, к какому из них они обратилисьчтобы узнать, какой из них отображать.
Можно ли узнать, к какому уведомлению они обратились, когда приложение не работает в фоновом режиме (и, следовательно, не запускаетdidReceiveLocalNotification method
)