Я использую phonegap-plugin-push
в своем приложении ionic3, и я столкнулся с этой проблемой на платформе iOS (с android все в порядке). Когда приложение находится в фоновом режиме / на переднем плане, все работает как положено. Однако когда приложение не запущено, я получаю сообщение на панели уведомлений, но ни при нажатии на уведомление, ни на значок приложения не запускается событие on('notification')
, оно просто запускается и игнорирует входящее уведомление.
Я использую { ... content-available: 1}
в сообщении aps json, как предложено в документации, но, похоже, оно не оказывает никакого влияния (хотя и влияет на Android), само ионное приложение никогда не получает сообщение, даже если устройство получило его и отобразило на панели задач.
Ниже, я показываю свои конфигурации и пример сообщения, отправляемого push-сервисам. Если у кого-то есть какие-либо идеи о том, как с этим разобраться, я буду признателен, я протестировал на ios 8.x и ios 11.x, оба показали одинаковое поведение.
const options: PushOptions = {
android: {
senderID: '*************',
icon: 'ic_stat_ic_notification'
},
ios: {
alert: 'true',
badge: 'true',
sound: 'true'
},
windows: {}
};
platform.ready().then(() => {
push.on('registration').subscribe((data: EventResponse) => {
// register data.registrationId
});
push.on('notification').subscribe((data: EventResponse) => {
alert(data.message)
});
});
Пример сообщения:
{
"aps": {
"alert": "This is a Push",
"badge": 1,
"content-available": 1
},
"payload": {
"type": "news"
}
}