Я занимаюсь некоторыми исследованиями, но, похоже, не могу заставить это работать. Есть ли способ представить UIAlertView в вашем приложении после того, как человек получил push-уведомление, когда приложение было в фоновом режиме или неактивно? Я попытался ввести код в didReceiveRemoteNotification, но он работает только тогда, когда приложение активно. Может ли кто-нибудь указать мне в правильном направлении?Настоящий UIAlertView для пользователя после того, как приложение становится активным ПОСЛЕ получения уведомления о нажатии
ответ
В соответствии с документацией - [Приложение UIApplicationDelegate: didReceiveRemoteNotification] get вызывается только тогда, когда приложение находится на переднем плане. Начиная с iOS7 вы должны использовать - [приложение UIApplicationDelegate: didReceiveRemoteNotification: fetchCompletionHandler:], которое будет вызываться как на переднем плане, так и в фоновом режиме.
Таким образом, вы можете запретить любое изменение пользовательского интерфейса, когда приложение находится в фоновом режиме (например, отображение UIAlertView будет проигнорировано). Однако вы можете установить флаг - [приложение UIApplicationDelegate: didReceiveRemoteNotification: fetchCompletionHandler:], а затем, когда его проверите и представите UIAlertView in - [UIApplicationDelegate applicationWillEnterForeground:].
Спасибо! Это сработало для меня! :) –
- 1. Подвижность UIWindow исчезает после того, как приложение становится активным
- 2. Сохранение сцены SpriteKit приостановлено после того, как приложение становится активным
- 3. Событие триггера на главном ViewController, когда приложение становится активным после получения push-уведомления
- 4. Социальный логин, когда приложение становится активным после состояния приостановки
- 5. Ошибка после получения Firebase уведомления о
- 6. Запустить начало таблицы сверху после того, как приложение станет активным
- 7. Как перезагрузить просмотр, когда приложение становится активным после приостановления?
- 8. Невидимая клавиатура, когда приложение становится активным после TouchID
- 9. Приложение стало активным после обработчика дозвона iOS
- 10. IOS MPMoviePlayer (возобновить воспроизведение после того, как приложение станет активным)
- 11. Держите Android-хронометр активным даже после того, как приложение убито
- 12. сравнение изображений не работает после того, как приложение стало активным
- 13. Приложение для iPhone становится настолько медленным, когда оно становится активным
- 14. AVPlayer видео не возобновляется после того, как приложение стало активным
- 15. MPMoviePlayerController audio только после того, как приложение стало активным
- 16. Получение уведомления о нажатии
- 17. Состояние бездействия после получения уведомления
- 18. Измените выбранную вкладку после получения Push-уведомления
- 19. Обнаруживать, когда приложение становится активным
- 20. Как обрабатывать push-уведомление, когда мое приложение становится активным?
- 21. После того, как вы отправили webhook синтаксического уведомления о выпуске
- 22. , какая функция будет вызываться после того, как фрагмент станет активным
- 23. буфер становится после того, как переиндексации
- 24. Заявление о сбое после уведомления
- 25. Уведомления о бесшумном нажатии. iOS
- 26. Отклонить локальные уведомления, когда приложение станет активным
- 27. Операционная система iOS, когда приложение становится активным
- 28. Сделать веб-запрос после получения push-уведомления
- 29. Освежающий Parse.com данных, когда приложение становится активным
- 30. Получить уведомление, когда приложение становится активным/неактивным
В этом случае пользователь открывает приложение, прокручивая push-сообщение в центре сообщений? В этом случае вы получите сообщение в параметрах запуска в applicationDidFinishLaunching: NSDictionary * userInfo = [startOptions objectForKey: UIApplicationLaunchOptionsRemoteNotificationKey]; –
@ JesperSchläger Это должно быть от запуска приложения в любом случае, а не только из центра уведомлений. –
В таком случае получить эту информацию прямо из iOS невозможно :-). Вы должны получить информацию с сервера, который вы использовали для отправки сообщения. –