2017-06-23 3 views
3

Mit Firebase rief ich sende dieses JSON:Wenn App im Hintergrund didReceiveRemoteNotification ist nicht mit Firebase

{ 
    "data": { 
    }, 
    "priority": "high", 
    "to": "xxxxx", 
    "content-available": "true", 
    "notification": { 
    "body": "HI!", 
    "title": "FCM Message", 
    "badge": 1, 
    "sound": "Default" 
    } 
} 

Aber didReceiveRemoteNotification:fetchCompletionHandler wird nicht aufgerufen, wenn App im Hintergrund ist.

Ich aktivieren Hintergrundmodi - Remote-Benachrichtigungen von Funktionen.

Irgendwelche Vorschläge?

Antwort

3

Ihr Schlüssel/Wert für den verfügbaren Inhalt ist falsch. Der Schlüssel ist content_available (Unterstrich, nicht Bindestrich) und der Wert ist ein boolean, nicht string:

{ 
    "data": { 
    }, 
    "priority": "high", 
    "to": "xxxxx", 
    "content_available": true, // <= CHANGED 
    "notification": { 
    "body": "HI!", 
    "title": "FCM Message", 
    "badge": 1, 
    "sound": "Default" 
    } 
} 

Siehe Table 1 of the HTTP Server Protocol document:

Auf iOS-Geräten verwenden Sie dieses Feld in den APNs inhalt zur Verfügung zu stellen Nutzlast. Wenn eine Benachrichtigung oder Nachricht gesendet wird und diese auf true gesetzt ist, wird eine inaktive Client-App aktiviert. Unter Android wecken Datennachrichten standardmäßig die App . In Chrome wird derzeit nicht unterstützt.

+0

jetzt funktioniert es, danke! –

0

Vergewissern Sie sich für Remote-Benachrichtigungen auf den Hintergrund-Modus schalten, wenn nicht dann auf Arbeitsplatz klicken und in Fähigkeiten gehen und schalten Sie Hintergrund-Modi

enter image description here Da diese in Bild letzte Option für Remote-Benachrichtigung Prüfung gezeigt Option

Verwandte Themen