在Ionic2中推送通知

时间:2017-10-12 04:14:08

标签: ionic2

我是Ionic开发的新手。我一直在为我的应用程序使用Ionic2并尝试在过去几个小时添加推送通知(FCM)。但是,我坚持添加推送配置。以下是详细信息:

  1. "phonegap-plugin-push": "^2.0.0"在我的package.json文件中配置。本机推送插件也是"@ionic-native/push": "^4.3.1"

  2. 在config.xml中,我添加了<resource-file src="google-services.json" target="google-services.json" />。还添加了<plugin name="phonegap-plugin-push" spec="^2.0.0" />

    3.这是我在主要组件文件中使用的代码:

        const options: PushOptions = {
          android: {
            topics: ['topic1']
          },
          ios: {
            alert: 'true',
            badge: true,
            sound: 'false'
          },
          windows: {},
          browser: {
            pushServiceURL: 'http://push.api.phonegap.com/v1/push'
          }
        };
    
        const pushObject: PushObject = this.push.init(options);
    
        pushObject.on('notification').subscribe((notification: any) => {
            if (notification.additionalData.foreground) {
                let pushAlert = this.alertCtrl.create({
                    title: 'BrainCal Notification',
                    message: notification.message.title
                });
                pushAlert.present();
            }
        });
    
        pushObject.on('registration').subscribe((registration: any) => {
            //do whatever you want with the registration ID
        });
    
        pushObject.on('error').subscribe(error => alert('Error with Push plugin' + error));
    
  3. 它已在我的Android手机中成功部署。但是,它在第​​一次打开应用程序时返回以下错误:

    "Error with Push plugin no senderID value given". 
    

    根据我的理解,最新的手机间隙插件不需要senderID,因为它使用Google-services.json文件。请指教。

1 个答案:

答案 0 :(得分:0)

删除插件where pip,然后使用如下所示的参数安装

pip --version