#javascript #android #cordova #push-notification #sapui5
#javascript #Android #кордова #push-уведомление #sapui5
Вопрос:
Я пытаюсь включить Push-уведомление в мое гибридное приложение. При этом я могу отправлять push-уведомление с rest-клиента, а также получать уведомления на моем устройстве Android. Теперь я хочу, чтобы пользователь устройства получал только предупреждающее сообщение, которое я отправляю с сервера.
Например: в теле моего метода Post я отправляю:
{ «alert»: «Привет, Android» }
Тогда ему должно быть видно только «Привет, Android», даже если я открою приложение.
В настоящее время, когда я тестирую приведенный выше пример, когда приложение пользователя открыто, он получает предупреждающее сообщение с подробной информацией, связанной с отправителем gcm, информацией collapse_key, помимо предупреждающего сообщения.
function processNotification(notification) {
console.log("Hi! You have received a notification: " JSON.stringify(notification));
alert("Hi! You have received a notification: " JSON.parse(notification));
if(sap.Push.isPlatformIOS()){
sap.Push.resetBadge(resetBadgeSuccess);
}
}
Любая помощь будет оценена
Комментарии:
1. Не могли бы вы предоставить дополнительную информацию — какую гибридную технологию вы используете? Это cordova, react-native, nativescript и т. Д. Также похоже, что вы используете определенный SDK / платформу. Пожалуйста, также включите это.
2. Привет @Vassildininski, он основан на Кордове.
3. и что это такое
sap.Push.isPlatformIOS()
— это из плагина или SDK какой-либо платформы? Вы общаетесь напрямую с GCM посредником?4. Привет @VasilDininski, если (sap.Push.isPlatformIOS()){ sap.Push.resetBadge(resetBadgeSuccess); } Это не важно, поскольку моя платформа Android, мы фактически используем SAP HCPMS для определения серверной части и отправки данных, таких как ключ API и отправитель GCM, надеюсь, это поможет
5. Чтобы устранить проблему, с которой вы столкнулись, вам следует заменить строку
alert("Hi! You have received a notification: " JSON.parse(notification));
наalert(notification.payload.alert);
. Это должно сработать. В общем, при повторной публикации на SO, пожалуйста, укажите дополнительные сведения — например, что вы используете платформу SAP и создаете мобильное приложение на базе cordova