2016-04-11 7 views
8

Chcę wysłać aktualizację stanu do aplikacji, która może (lub nie) milczeć.Wyślij ciche powiadomienie przez GCM na Androida/IOS

Na przykład, jeśli użytkownik otrzyma nową wiadomość od jednego z jej znajomych, chcę wysłać taką wiadomość i być w stanie wyświetlić alert z dźwiękiem.

Ale w tym przypadku chcę, aby użytkownik nie zauważył takiego powiadomienia. musi zostać zebrane przez aplikację; na przykład, jeśli mój użytkownik ma dwa urządzenia, a on zmienia swoje nazwisko w jednym z nich, chcę wysłać drugie urządzenie (które śpi) do cichej aktualizacji nazwy, które powinno wywołać zmianę (zostać wysłane do aplikacji) w tle.

Zgodnie z tym, co przeczytałem, jest to możliwe, ale jestem dość zdezorientowany, jeśli chodzi o to, jak to jest i jak należy to robić, i czasami występują pewne sprzeczności. Jako programista zaplecza mogę zrobić wszystko, ale muszę się upewnić, że to działa dla facetów z frontendu.

Oto niektóre istotne tematy:

Silent background push on iOS and Android

Push Notifications without alert

iPhone push notification without alert

Android Silent Push

Odpowiedz

21

Android:

Dopóki nie zawierają notification tag w swojej ładowności i umieścić data tag w nim masz cichego powiadomienia

tego przykładem może pokazać powiadomienie

{ "notification": { 
    "title": "Portugal vs. Denmark", 
    "text": "5 to 1" 
    }, 
    "to" : "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1..." 
} 

nie byłoby pokazać powiadomienie

{ 
    "to" : "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...", 
    "data" : { 
    "Nick" : "Mario", 
    "body" : "great match!", 
    "Room" : "PortugalVSDenmark" 
    }, 
} 

iść tutaj, aby przeczytać więcej https://developers.google.com/cloud-messaging/concept-options#notifications_and_data_messages

iOS

dodać tag contentAvailable: 1 do json ładowności i masz cichego powiadomienie

jej, że proste

+1

hi dzięki za odpowiedź. w Androidzie użytkownik może wyłączyć powiadomienia push. Co stanie się z cichym naciśnięciem, jeśli użytkownik wyłączy powiadomienia push dla aplikacji z ustawień? nadal może otrzymywać powiadomienia Daha? – savepopulation

+2

Odpowiedni znacznik dla iOS to "content-available", a musisz upewnić się, że nie umieścisz przycisku "sound", "znaczek" lub "alert" w słowniku "aps". Musisz także skonfigurować swoją aplikację tak, aby miała tryb tła "Powiadomienia zdalne". https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/CreatingtheNotificationPayload.html#//apple_ref/doc/uid/TP40008194-CH10-SW8 – Alec