使用Firebase自定义单击Ionic通知

时间:2016-12-16 06:27:15

标签: firebase ionic-framework push-notification firebase-cloud-messaging

我一直在使用离子和FCM(Firebase云消息传递)进行通知。

我在我的应用上收到通知,现在我有2个问题。首先,如果它是正常通知,而不是 Firebase控制台>中的高级选项通知,然后它没有播放任何声音,但是当它的数据通知时,它确实播放声音。其次,我想在通知点击时打开我的应用程序的特定页面。

那我该怎么做?

注意:我使用离子而不是离子2.

1 个答案:

答案 0 :(得分:3)

第一期: 我们在两种情况下都有声音。您是否尝试过发送空数据对象?

第二期: 假设您使用Cordova FCM插件。否则用

安装
cordova plugin add cordova-plugin-fcm --save

将具有ID的数据用于正确的数据页,然后执行以下操作:

angular.module('app', ['ionic'])
.run(function ($ionicPlatform) {
    $ionicPlatform.ready(function() {
        if(window.cordova) {
            FCMPlugin.onNotification(
                function(data){
                    if(data.wasTapped){
                        //Notification was received on device tray and tapped by the user.
                        $state.go('yourpage', {id:data.pageId});
                        console.log('onNotification tapped true');
                    } else {
                        //Notification was received in foreground. User needs to be notified.
                        console.log('onNotification tapped false');
                    }
                },
                function(msg){
                    console.log('onNotification callback successfully registered: ' + msg);
                },
                function(err){
                    console.log('Error registering onNotification callback: ' + err);
                }
            );
        }
    });
});