УведомленияРегистрация Handler не вызывается на iOS

У меня есть приложение, работающее и опубликованное в магазине приложений Apple. Мы разрабатываем обновление с новыми функциями, и я заметил, что NotificationsRegistrationHandler больше не вызывается в iOS, когда пользователь соглашается получать уведомления (в Android работает нормально). Это означает, что приложение не получает DeviceToken, поэтому мы не можем отправить уведомление. Проц. очень прост и не выглядит как проблема, потому что он работает на устройствах Android:

for each
    where DeviceType = &DeviceType  // enum domain SmartDeviceType
    where DeviceId   = &DeviceId    // Character(128)

    DeviceToken  = &DeviceToken // Character(255)
    DeviceName   = &DeviceName  // Character(128)

when none

    new
        DeviceType  = &DeviceType
        DeviceId    = &DeviceId
        DeviceToken = &DeviceToken
        DeviceName  = &DeviceName      
    endnew

endfor

Что я уже пробовал:

  1. Создание и установка новых сертификатов распространения и профилей предоставления.
  2. Перестроить все, построить только этим и т. Д.
  3. Протестировано в "TestFlight" также.
  4. Проверено на разных устройствах.

Опубликованное приложение сейчас работает, но я боюсь опубликовать это обновление и испортить уведомление.

Я использую GeneXus Evo 3 U2, генератор.NET и Oracle.

Любое предложение, как это исправить?

РЕДАКТИРОВАТЬ: протестировано с сертификатом распространения и песочницей = false, построено для распространения и отправлено в testflight, та же проблема. знак равно

2 ответа

Решение

Я исправил, вот что я сделал:

Обновлен с "U2" до "U8". Поскольку у "U8" есть некоторые требования к версиям OSX и XCode, я обновил обе версии до последней.

Теперь "NotificationRegistrationHadler" вызывается как обычно.

Вы проверили, что в профиле обеспечения (developer.apple.com) служба push-уведомлений активна:

Разработчик Apple Включенные сервисы: Game Center, Покупка из приложения, Push-уведомления

Другие вопросы по тегам