#notifications #default #preferences #ios5 #uilocalnotification
#уведомления #По умолчанию #настройки #ios5 #uilocalnotification
Вопрос:
У меня есть приложение для iPad в App Store, логика которого в значительной степени зависит от локальных уведомлений. Другими словами, многое из того, что происходит внутри приложения, запускается методом делегирования application didReceiveLocalNotification.
С сегодняшним выпуском iOS 5 я вижу, что приложения можно размещать (через настройки) либо «В центре уведомлений», либо «Не в центре уведомлений». Я пока ничего не нашел в новой документации, но я надеюсь, что есть способ установить мое приложение «В центре уведомлений» по умолчанию (и, возможно, даже установить звуки активными, а тип уведомления — предупреждающим), что избавило бы меня от необходимости явно объяснять новым пользователям, что после того, как онизагрузите и установите мое приложение, им придется вручную перейти и выбрать, чтобы приложение было «В центре уведомлений».
Кто-нибудь знает, возможно ли это? Похоже, что, поскольку приложение может регистрировать локальное уведомление, оно должно иметь возможность получать его по умолчанию (независимо от того, отображает ли оно предупреждение или элемент в новом центре уведомлений или нет).). Заранее спасибо.
Ответ №1:
Я столкнулся с той же проблемой. Единственная подсказка, которую я видел в документации, заключается в том, что новый центр уведомлений обрабатывает как локальные, так и удаленные уведомления. Поэтому я предположил, что приложение должно зарегистрироваться для локального, как и для удаленного уведомления. Добавлен этот фрагмент кода —
[[UIApplication sharedApplication] registerForRemoteNotificationTypes: (UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound)];
и после того, как мое приложение запланировало локальное уведомление, оно появилось в «В центре уведомлений».
НО, похоже, это не влияет, если мое приложение уже отображается в «Не в центре уведомлений».. Итак, все ли мои клиенты, которые запускали приложение до следующего обновления, были испорчены?
Комментарии:
1. Ну, во всяком случае, это несколько полезно. Но да, я ненавижу, что люди, которые ранее устанавливали и запускали наши приложения, просто должны это понять. Я думаю, пришло время отправить сообщение об обновлении iOS 5 на мой веб-сайт поддержки и метаданные iTunes!
2. Не возражаете, если я спрошу, где вы добавили этот код? Есть ли для этого наилучшая практика? Еще раз спасибо за совет.
3. Я добавил его прямо в начале didFinishLaunchingWithOptions. Apple действительно раздражает, что приложения с только локальными уведомлениями по умолчанию отключены. Как насчет пользователей, которые не обновляли свои приложения из App Store?
4. Кажется, не работает, если вы на самом деле не используете push-уведомления, потому что в противном случае вызов завершается неудачно?
5. Не здесь, я не использую push, и регистрация сработала. Может быть, вы используете флаги, требующие нажатия?
Ответ №2:
В настоящее время, похоже, нет.
Я в аналогичной ситуации. Я бы хотел ошибаться в этом, но я не нашел упоминания о каком-либо таком API (для указания того, что приложение, использующее локальное уведомление, должно отображаться в центре уведомлений по умолчанию) в любом из мест, где я ожидаю, что это будет:
Комментарии:
1. Я тоже, но я решил, что выложу его там, поскольку я все еще относительно новичок в iOS, и подумал, что могу пропустить его.