Ionic Cordova项目中Firebase推送通知的问题

问题描述 投票:2回答:2

我正在开发一个Ionic应用程序,我需要推送通知。我正在使用Firebase Cloud Messaging,但使用@ ionic-native / push数据包时遇到一些错误。

这是我在app.component.ts中调用的initPushNotification()

initPushNotification() {
    const options: PushOptions = {
      android: {
        senderID: 'MY_SENDER_ID'
      },
      ios: {
          alert: 'true',
          badge: true,
          sound: 'false'
      }
   }

   const pushObject: PushObject = this.push.init(options);


   pushObject.on('notification').subscribe((notification: any) => console.log('Received a notification', notification));

   pushObject.on('registration').subscribe((registration: any) => console.log('Device registered', registration));

   pushObject.on('error').subscribe(error => console.error('Error with Push plugin', error));
}

我当前遇到此错误:

core.js:1449错误错误:未捕获(承诺):TypeError:Object(...)不是函数TypeError:Object(...)不是一个函数在PushObject.on(index.js:61)在MyApp.webpackJsonp.493.MyApp.initPushNotification(app.component.ts:105)在app.component.ts:75在t.invoke时(polyfills.js:3)在Object.onInvoke(core.js:4760)在t.invoke时(polyfills.js:3)在r.run(polyfills.js:3)在polyfills.js:3在t.invokeTask(polyfills.js:3)在Object.onInvokeTask(core.js:4751)在c(polyfills.js:3)在polyfills.js:3在t.invokeTask(polyfills.js:3)在Object.onInvokeTask(core.js:4751)在t.invokeTask(polyfills.js:3)在r.runTask(polyfills.js:3)在o(polyfills.js:3)在e.invokeTask上[调用时](polyfills.js:3)在p(polyfills.js:2)在HTMLDocument.v(polyfills.js:2)defaultErrorLogger @ core.js:1449

我在Chrome,模拟器和真实设备中收到此错误。

似乎未识别出pushobject。

请注意,我正在使用:

import { Push, PushObject, PushOptions } from '@ionic-native/push/ngx';

并且我已经在app.module.ts中将Push作为提供程序导入。

谢谢大家,如果您理解此问题。

firebase cordova notifications firebase-cloud-messaging push
2个回答
2
投票

通常会在安装了不同版本的@ ionic-native软件包时发生。

运行npm ls --depth=0并确保本地安装的所有@ ionic-native软件包均已对齐


1
投票

仅使用先前版本的推送已修复。

© www.soinside.com 2019 - 2024. All rights reserved.