2016-10-06 148 views
0

我花了我最後2個小時試圖弄清我們爲什麼從FireBase發出的通知沒有發出任何聲音或振動。Android notificationcomcomp聲音/振動不起作用

我已經看過關於這個問題的許多議題,並與.setDefaults.setVibrate(new long[] { 1000, 1000, 1000, 1000, 1000 }).setSound(defaultSoundUri)

嘗試不同的組合,我現在所擁有的是這樣的:

Intent intent = new Intent(this, MainActivity.class); 
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
    PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, 
      PendingIntent.FLAG_ONE_SHOT); 

    NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this) 
      .setSmallIcon(R.mipmap.ic_launcher) 
      .setContentTitle("Firebase Push Notification") 
      .setContentText(messageBody) 
      .setAutoCancel(true) 
      .setPriority(Notification.PRIORITY_MAX) 
      .setDefaults(-1) 
      .setContentIntent(pendingIntent); 

    NotificationManager notificationManager = 
      (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); 

    notificationManager.notify(0, notificationBuilder.build()); 

我沒有任何錯誤和通知顯示,但我重複,沒有聲音,沒有振動,沒有led燈,沒有擡頭。

要送我使用Python庫我的服務器上的通知:

# Send to single device. 
from pyfcm import FCMNotification 

push_service = FCMNotification(api_key="xxxxxxxxxxxxxxxx") 

registration_id = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" 
message_title = "Test" 
message_body = "Test notification" 
result = push_service.notify_single_device(registration_id=registration_id, message_title=message_title, message_body=message_body) 

print result 

注:我已經在清單中定義的權限:<uses-permission android:name="android.permission.VIBRATE" /> 任何IDEEA?

+0

如果您是通過應用服務器發送,那麼請分享JSON –

+0

您的通知有效載荷只是刪除.setDefaults(-1)和使用.setDefaults(Notification.DEFAULT_SOUND),而不是 – Jai

+0

@NishantDubey我從我的服務器中添加的代碼。 Jai去掉.setDefaults(-1)不起作用 –

回答

0

對於有使用聲音和振動檢查的能力,如果你有正確的premission:

<uses-permission android:name="android.permission.VIBRATE" /> 
+0

我已經有在清單中定義。 –

+0

你用什麼手機? – Lior

+0

三星Galaxy s6 –

1

你是不是從你的服務器發送聲音標記也許這就是爲什麼你沒有得到通知聲音。請嘗試添加:

sound = "default" 

這可能會讓您聽到通知的聲音。

看一看這樣的:

https://firebase.google.com/docs/cloud-messaging/http-server-ref

更好地理解FCM下游Android通知標誌。

請讓我知道它是否會改變你的任何東西。

+0

好吧,聲音的問題已解決,但爲什麼沒有振動和頭 –

+0

請看看鏈接,你還需要設置**優先**作爲**高**從服務器 –

+0

考慮upvoting和接受答案,如果它有幫助 –