如何在科尔多瓦应用程序中使用推送通知?



我有一些奇怪的问题...我正在我的 Ionic 应用程序中使用推送通知进行消息传递,但它不时工作......我的代码是:

public initPushNotification() {
if (!this.platform.is('cordova')) {
console.warn('Cordova is not available - Run in physical device. Push notifications not initialized.');
return;
}
let zone = new NgZone({ enableLongStackTrace: false });
zone.run(() => {
this.Push.hasPermission().then((res: any) => {
if (res.isEnabled) {
const options: PushOptions = {
android: {
senderID: GOOGLE_FCM_ID
}
};
let push_object = this.Push.init(options);
push_object.on('registration').subscribe((data: any) => {
this.APIRequest.post('/messages/register-fcm-token', data).subscribe(response => {
console.log(response)
}, err => {
console.log(err)
})
console.log('push.registration', data);
});
push_object.on('notification').subscribe((data: any) => {
console.log('push.notification', data);
this.events.publish('messages:push', data.message);
});
push_object.on('error').subscribe(error => console.error('Error with Push plugin', error));
} else {
alert('We do not have permission to send push notifications');
}
});
});
}

它位于app.component.ts

一些行为:

  1. 当应用程序在手机上最小化时Cat S60工作正常
  2. 有时,当应用程序在某些廉价Huawei上最小化时会起作用
  3. 当应用程序按原样打开时,一段时间在两台设备上都有效。在大多数情况下,不会。

当我将其发送给Google时,我会收到OK状态。

您可以使用一个信号进行通知。它既快速又有效。您可以从下面的链接获取详细信息。

https://documentation.onesignal.com/v3.0/docs/cordova-sdk-setup

https://www.npmjs.com/package/onesignal-cordova-plug

http://www.plugreg.com/plugin/one-signal/onesignal-cordova-sdk

相关内容

  • 没有找到相关文章

最新更新