Ionic 2 - FCM自定义声音通知

时间:2018-05-29 12:41:26

标签: ionic-framework ionic2 ionic3 cordova-plugin-fcm

我已经使用PHP实现了FCM通知,以便在移动设备上发送通知。 通知工作正常,但我想在通知中添加声音。 我关注了FCM的Ionic文档。

this.fcm.getToken().then(token =>{
    alert("token : "+token);
});

this.fcm.onNotification().subscribe(data => {
    alert("data :"+ JSON.stringify(data));

    if(data.wasTapped){
        alert("Received in background : "+ JSON.stringify(data.msg));
    } else {
        alert("Received in foreground : "+ JSON.stringify(data.msg));
    }
}, err =>{
    alert("Received err : "+ err);
})

我的php有效负载:

$message['msg'] = 'notification text';
$message['sound'] = 1;
$message['vibrate'] = 1;

$fields = array(
 'registration_ids' => $tokenIds,
 'data' => array('message' => $message)
);

我将$fields发送到通知插件

有没有人实现这种功能?

2 个答案:

答案 0 :(得分:1)

在推送通知有效负载中设置以下属性。 您需要将sound属性设置为default

    "notification":{
    "title":"Notification title",
    "body":"Notification body",
    "sound":"default",
    "click_action":"FCM_PLUGIN_ACTIVITY",
    "icon":"fcm_push_icon"
  },

答案 1 :(得分:1)

在php服务器端,我设置了像这样的$ fields数组

$fields = array(
        'registration_ids' => $tokenIds,
        'data' => array('message' => $message,
                        'click_action' => "FCM_PLUGIN_ACTIVITY",
                        'sound'=>'default'),
        'notification'=>array('message' => $message,
                            'click_action' => "FCM_PLUGIN_ACTIVITY",
                            'sound'=>'default'),
        'priority'=> "high"
    );

这可以用于背景的fcm通知和离子的声音