2016-09-19 2 views
1

СИТУАЦИИ:Ионные Push уведомление: Не получая в IOS

Я использую Ionic Push Notifications в моем приложении.

С андроид все работает нормально. Но с IOS я не получаю никаких уведомлений.

Код должен быть точным. Регистрация маркера работает правильно и внутри устройств IOS. Я вижу маркер в базе данных.

Также код запроса cURL должен быть прекрасным, так как он работает для android.

Я вставит ниже всю информацию, которая может оказаться полезной:

КОД:

Initialization:

$ionicCloudProvider.init({ 

    "core": 
    { 
     "app_id": "MY_APP_ID" 
    }, 
    "push": 
    { 
     "sender_id": "MY_SENDER_ID", 
     "pluginConfig": { 
      "ios": { 
       "badge": true, 
       "sound": true 
      } 
     } 
    } 
}); 

ИО-config.json:

{"app_id":"MY_APP_ID","api_key":"MY_API_KEY","dev_push":false,"gcm_key":"MY_GCM_KEY"} 

сертификатов:

В ionic.io я настроил сертификат - режим производства - и активировать все полномочия: ionic.io certificate

Внутри компании Apple Developer Console, толчок служба уведомления правильно включена (для производства)

enter image description here

тесты:

Приложение уже опубликовано в магазине приложений.

В любом случае я провел тесты как локально через XCODE (с подключенными к нему устройствами), так и непосредственно загружая приложение из магазина приложений.

Я никогда не получал никаких уведомлений.

Создание теста с использованием Почтальон это результат:

{ 
    "data": { 
    "status": "open", 
    "uuid": "b55a9024-d0d9-480e-a813-02053bcf2f2a", 
    "created": "2016-09-19T14:05:01.097422+00:00", 
    "state": "enqueued", 
    "app_id": "MY_APP_ID", 
    "config": { 
     "tokens": [ 
     "THE_RECEIVER_TOKEN" 
     ], 
     "notification": { 
     "message": "Push test" 
     }, 
     "profile": "MY_IONIC_IO_PROFILE" 
    } 
    }, 
    "meta": { 
    "status": 201, 
    "request_id": "dbb57cba-3817-42ee-baaf-7175b5f6c755", 
    "version": "2.0.0-beta.0" 
    } 
} 

ВОПРОС:

Почему я не получаю никакого уведомления о IOS?

Я что-то не хватает?

Спасибо!

ответ

3
  • Убедитесь, что уведомления включены в приложении IOS настройки
  • Попробуйте использовать content_available = истину в нажимной полезной нагрузке
  • Попробуйте использовать приоритет = «высокий» в нажимной полезной нагрузке
  • Убедитесь, что вы не отправлять с использованием сертификатов развития на серийную версию приложения или наоборот
  • Убедитесь, что маркер действителен и обновилась

Docs about priority and content_available attributes

Из документации:

КСН, установите content_available, когда сервер приложений должен отправить сообщение Send-To-Sync. Неактивное клиентское приложение выполнит вашу логику в фоновом режиме, в то время как приложение на переднем плане передаст сообщение didReceiveRemoteNotification :.

+0

Спасибо за ответ. Не могли бы вы дать мне ссылку на документацию о content_available и приоритете? Я использую эту документацию: https://docs.ionic.io/services/push/ и не нашел, как это сделать. Благодаря! – johnnyfittizio

+0

См. Обновленный ответ – lubilis

+0

Спасибо. Я нашел приоритет и content_available в настройке устройства теста ionic.io send push notification. Я получил nofitication для android, но не для IOS. В любом случае я буду исследовать это по-другому и по другим вопросам. – johnnyfittizio

0
  1. Убедитесь, что последняя версия ионический, е v2 и выше.
  2. В пути SRC/приложение/app.components.ts
  3. После platform.ready(). Затем (() => {добавить код, приведенный ниже

    уаг толчок = Push.init ({ андроид : { SenderId: "XXXXXXXXX" }, ИОС: { предупреждение: "истина", значок: правда, звук: 'ложь' }, окна: {} }); push.on ('registration', (data) => { console.log (data.registrationId); alert (data.registrationId.toString()); });

    push.on ('уведомление', (данные) => {console.log (данные); });

  4. После сборки (ионная сборка ios) откройте ионный проект в Xcode, а в целом и в разделе команды выберите учетную запись, в которой была заплачена учетная запись разработчика Apple.

  5. Затем в возможностях включить push-уведомление.

  6. Если все другие ограничения, такие как файлы сертификатов и .p12, выполняются в соответствии с линиями гильдии Apple, то нажатие, безусловно, будет работать.

  7. Для получения дополнительной информации посетите эту ссылку: http://ionicframework.com/docs/v2/native/push/

Смежные вопросы