2016-08-01 43 views
3

Ich habe Firebase Cloud Messaging in meiner Android App implementiert.android FCM aktivieren/deaktivieren von Anwendung Einstellungen

Ist es möglich, Benachrichtigungen von meinem Bildschirm mit den Anwendungseinstellungen zu deaktivieren?

Es war mit alten GCM möglich, wie wir GcmReceiver ausgestrahlt haben und wir konnten es selbst behandeln.

Jetzt haben wir nur FirebaseInstanceIdService und könnte damit nur umgehen, wenn App im Vordergrund ist.

Wie können wir damit umgehen, wenn App im Hintergrund ist?

Ist es nur möglich, Firebase Cloud Messaging nur für eine bestimmte Kategorie von Benachrichtigungen in der App zu deaktivieren, oder sollte dies auf der Serverseite erfolgen?

Antwort

0

Ich kam mit der Lösung, um eine Anfrage an den Server zu senden, wenn ich einige Arten von Benachrichtigungen ein-/ausschalten muss. Und wenn senden Anfrage zum Ausschalten einige Notification Server nicht mehr FCM-Server zum Senden einer Benachrichtigung an das Gerät

2

Sie können verwalten, ob Benachrichtigungen angezeigt werden, indem Sie immer Datennachrichten von Ihrem Anwendungsserver senden. Die Firebase-Konsole sendet immer Benachrichtigungen, bei denen es sich um Nachrichtentypen handelt, die automatisch Benachrichtigungen generieren, wenn sich Ihre App im Hintergrund befindet. Wenn Sie also vollständige Kontrolle darüber haben möchten, wann Benachrichtigungen angezeigt werden, verwenden Sie Datennachrichten, die nur von Ihrem App-Server verfügbar sind, noch nicht von der Firebase-Konsole. Weitere Informationen zu Nachrichtentypen finden Sie unter here.

+0

Wie gehen Sie mit Push-Benachrichtigungen, auch wenn ihr Typ ist "data" 'welcher Typ für den Benutzer anzeigen, die nicht? –

+0

Mit Datennachrichten erhalten Sie immer den onMessageReceived Callback, Sie können eine Benachrichtigung an diesem Punkt generieren, wenn Sie möchten. Die Datennachricht kann Informationen enthalten, anhand derer Sie feststellen können, ob eine Benachrichtigung angezeigt werden soll oder nicht. –