У меня есть приложение, которое должно было активировать push-уведомления, но по какой-то причине их нет. Я видел, как другие пользователи загружают и устанавливают приложение, и даже не запрашивают у них разрешения на отправку push-уведомлений. Как и ожидалось, это приложение не отображается в настройках > Уведомления.
Однако на моем iPad я могу получать push-уведомления из этого приложения, и он отображается в моих настройках > Уведомления. Я удалил и переустановил приложение, чтобы убедиться, что у меня есть то же самое, что у всех остальных (а не версия для разработки), и я все еще могу получать уведомления.
Теперь это приложение было написано для клиента, который отправил мне все профили подготовки (dev, adhoc, distribution), а также файлы, необходимые для отправки push-уведомлений, поэтому я не могу точно знать, что все был правильно создан.
Моя теория прямо сейчас такова:
- профиль adhoc, который я получил, был "правильно создан" (т.е. сгенерирован после настройки APN на App App ID в Provisioning Portal)
- профиль распространения, который я получил, был создан до настройки APN для этого приложения (и, следовательно, он не "нажимал" )
- причина, по которой я могу получать push-уведомления на своем устройстве, заключается в том, что во время разработки я установил adhoc-версию, которая вызвала у меня разрешения на получение push-уведомлений, и хотя я удалил эту версию adhoc и загрузили версию из магазина, устройство "кэшировало" тот факт, что я готов получать уведомления и больше не запрашиваю у меня это. Я проверил с другими приложениями, и действительно, после того, как я их удалю и переустановить, они не будут запрашивать у меня снова разрешения на получение push-уведомлений.
Итак, мои вопросы:
- Имеет ли смысл эта теория?
- Если это так, это означает, что я должен попросить клиента создать новый профиль предоставления распределения. Как я могу проверить, что этот профиль "нажат"? (т.е. учитывая, что я не могу просто установить приложение, скомпилированное с ним)