FCM, GCM ile geriye doğru uyumludur. AWS'de FCM'yi kurma adımları, GCM kurulum prosedürü ile aynıdır ve (en azından şu an için) FCM, sunucu tarafı yapılandırmasına göre GCM ve SNS ile şeffaf bir şekilde çalışır.
Ancak Gönderdiğiniz eğer, data
Android cihaza yükleri bir uygulamaya sürece işleme alınmayacaktır istemci tarafı hizmeti uzanır FirebaseMessagingService
. AWS konsolundaki varsayılan JSON mesaj oluşturucusu data
, yukarıda belirtilen hizmet uygulanmadığı sürece uygulamanız tarafından yok sayılacak mesajlar gönderir . İlk test için bunu notification
aşmak için, cihazınız tarafından alınacak özel bir yük sağlayabilirsiniz (uygulamanız ön planda olmadığı sürece)
Orada GCM-FCM taşıma talimatları Google tarafından sağlanan ancak marka gereken değişiklikler App tarafında ağırlıklı olarak bulunmaktadır.
Uygulamanızda SNS ile GCM / FCM'yi test etmek için izlemeniz gereken adımlar şunlardır:
- SNS'de bir Platform Uygulaması oluşturun , Push Bildirim Platformu olarak Google Cloud Messaging'i (GCM) seçin ve API anahtarı alanında Sunucu API anahtarınızı sağlayın .
- Platform Uygulamasını seçin ve Platform uç noktası oluştur düğmesine tıklayın.
- Uygulamanız tarafından oluşturulan Örnek Kimliğini ( Cihaz Jetonu ) sağlayın . Bunu Android Uygulamanızda görmek
FirebaseInstanceIDService
için genişletmeli ve onTokenRefresh
yöntemi geçersiz kılmalısınız. Eğer bir kez yapmış , kaldırma ve uygulamanızı yeniden ve belirteç ilk açılışta Android Studio hata ayıklama konsoluna basılmalıdır.
- Click Ekle uç nokta düğmesini.
- Platform uygulamanız için ARN bağlantısına tıklayın.
- Cihazınız için yeni oluşturulan Uç Noktayı seçin ve Uç noktaya yayınla düğmesini tıklayın.
- JSON Mesaj Formatını seçin ve JSON mesaj oluşturucu düğmesine tıklayın.
- Bir test mesajı girin ve JSON Oluştur düğmesini tıklayın
- Şimdi "yakalama kısmı" geliyor.
SNS tarafından oluşturulan mesaj şu biçimde olacaktır:
{
"GCM": "{ \"data\": { \"message\": \"test message\" } }"
}
Daha önce de belirttiğimiz gibi, data
bunları alacak bir hizmet uygulanmadıysa yükler göz ardı edilecektir. Çok fazla kod yazmadan test etmek istiyoruz, bu yüzden bunun yerine bir notification
yük göndermeliyiz . Bunu yapmak için, JSON mesajını okuyacak şekilde değiştirmeniz yeterlidir:
{
"GCM": "{ \"notification\": { \"text\": \"test message\" } }"
}
Bunu yaptıktan sonra, uygulamanızın cihazda çalışmadığından emin olun ve Mesajı Yayınla düğmesine basın. Şimdi cihazınızda bir bildirim açılır görmelisiniz.
Elbette tüm bunları Amazon SNS API aracılığıyla programlı olarak yapabilirsiniz, ancak tüm örnekler data
yükü kullanıyor gibi görünmektedir, bu nedenle bunu aklınızda bulundurmanız ve kullanım durumunuza uygun bir yük oluşturmanız gerekir.