Firebase Cloud Messaging Notification Vibration

2019-02-06 10:59发布

问题:

Is it possible to make an Android device vibrate when receiving notifications in the background with Firebase Cloud Messaging? From the Syntax Reference I have seen and tested that sound is supported, but no info on vibration. Or is it somehow possible to provide a customized implementation for this notification where I would directly set the vibration?

回答1:

You should mark yourself as a correct answer.

On a sidenote, if you do send a Notification and a Data payload, use

"notification":{
    "sound":"default"
}

This will play the sound when the application is in background and the device is set to sound, and it will play a vibration if the device is set to vibrate.

However, as far as customization goes I think you need to use the Data Payload only if you want to customize the vibration pattern for example.



回答2:

From what I have tested the format of the FCM Notification message seems to be quite rigid, so for customized notifications, the solution seems to be:

  1. Making sure that the payload of the JSON message being sent downstream contains the data parameter but doesn't contain the notification parameter (Sources: Message JSON Syntax, FCM Message Types)
  2. Creating the Notification in the implementation of the overridden onMessageReceived(RemoteMessage remoteMessage) from the application's FirebaseMessagingService (Example)


回答3:

array("title"=>"hello","body" =>"hello world",'sound' => 'default')