Kullanıcılara mesaj göndermek için FCM ve FIAM kullanın

1. Başlamadan önce

Bu codelab'de, ister ön planda ister uygulamanızı arka planda kullanıyor olsunlar, kullanıcılarla etkileşim kurma yeteneğini nasıl ekleyeceğinizi öğreneceksiniz.

206c7ecece550bde.png

Önkoşullar

Hiçbiri

ne öğreneceksin

  • Android Uygulamanıza Firebase ekleyin
  • FCM ve FIAM bağımlılıkları ekleyin
  • Uygulamanıza test FCM mesajı gönderin
  • Uygulamanıza test FIAM mesajı gönderin

Neye ihtiyacın olacak

  • Android Stüdyosu 4.1
  • Android cihaz veya emülatör

2. Başlayın

Örnek kodu alın

GitHub deposunu komut satırından klonlayın:

Başlangıç ​​uygulamasını içe aktarın

Android Studio'dan codelab-fcm-and-fiam dizinini seçin ( android_studio_folder.png ). Önceki adımda klonlanan olacaktır ( Dosya > > .../codelab-fcm-and-fiam).

Artık FcmAndFiam projesini Android Studio'da açmış olmalısınız. Bir google-services.json dosyasının eksik olduğuna dair bir uyarı görürseniz endişelenmeyin. Bir sonraki adımda eklenecektir.

3. Firebase konsol projesi oluşturun

Projeye Firebase ekleyin

  1. Firebase konsoluna gidin.
  2. Proje ekle'yi seçin.
  3. Bir Proje adı seçin veya girin.
  4. Firebase konsolunda kalan kurulum adımlarını izleyin, ardından Proje oluştur'u (veya mevcut bir Google projesini kullanıyorsanız Firebase Ekle'yi) tıklayın.
  5. Yeni projenizin genel bakış ekranından, kurulum iş akışını başlatmak için Android simgesine tıklayın.
  6. Codelab'in paket adını girin: com.google.firebase.codelab.fcmandfiam

google-services.json dosyasını uygulamanıza ekleyin

Paket adını ekledikten sonra, Uygulamayı Kaydet'e ve ardından Firebase Android yapılandırma dosyanızı almak için google-services.json'u İndir'e tıklayın, ardından google-services.json dosyasını projenizdeki app dizinine kopyalayın. Dosya indirildikten sonra konsolda gösterilen sonraki adımlar için Atla'ya tıklayabilirsiniz (bunlar sizin için build-android-start projesinde zaten yapılmıştır).

Uygulamanıza google hizmetleri eklentisi ekleyin

google-services eklentisi, uygulamanızı Firebase'i kullanacak şekilde yapılandırmak için google-services.json dosyasını kullanır. Google hizmetleri eklentisi bağımlılığı ve eklentinin kendisi sırasıyla proje ve uygulama düzeyinde derleme dosyalarına eklenmiş olmalıdır. Aşağıdaki girişleri onaylayın:

build.gradle

buildscript {
  ...
  dependencies {
    ...
    classpath 'com.google.gms:google-services:4.3.8'
  }
}

uygulama/build.gradle

plugins {
  ...
  id: 'com.google.gms.google-services'
}

Bağımlılık ekle

FCM ve FIAM, aşağıdaki bağımlılıkları gerektirir. Bu bağımlılıklar, uygulama düzeyinde derleme dosyasına zaten eklenmiş olmalıdır. Aşağıdaki bağımlılıkların eklendiğini onaylayın:

uygulama/build.gradle

dependencies {
  ...
  implementation platform('com.google.firebase:firebase-bom:28.4.2')
  implementation 'com.google.firebase:firebase-analytics'
  implementation 'com.google.firebase:firebase-messaging'
  implementation 'com.google.firebase:firebase-inappmessaging-display'
}

Projenizi gradle dosyalarıyla senkronize edin

Uygulamanızda tüm bağımlılıkların mevcut olduğundan emin olmak için bu noktada projenizi gradle dosyalarıyla senkronize etmelisiniz. Android Studio araç çubuğundan Dosya > Projeyi Gradle Dosyalarıyla Eşitle'yi seçin.

4. Günlük Tanımlayıcıları

Firebase Cloud Messaging ve Firebase In App Messaging, uygulamalara mesaj göndermek için tanımlayıcıları kullanır. FCM bir kayıt belirteci kullanır ve FIAM bir kurulum kimliği kullanır.

  1. Mesaj göndermek için gereken tanımlayıcıları günlüğe kaydetmek için MainActivity.kt aşağıdaki kodla değiştirin:
FirebaseMessaging.getInstance().token.addOnCompleteListener { regTokenTask ->
   if (regTokenTask.isSuccessful) {
       Log.d(TAG, "FCM registration token: ${regTokenTask.result}")
   } else {
       Log.e(TAG, "Unable to retrieve registration token",
           regTokenTask.exception)
   }
}
FirebaseInstallations.getInstance().id.addOnCompleteListener { installationIdTask ->
   if (installationIdTask.isSuccessful) {
       Log.d(TAG, "Firebase Installations ID: ${installationIdTask.result}")
   } else {
       Log.e(TAG, "Unable to retrieve installations ID",
           installationIdTask.exception)
   }
}
  1. Android cihazınızı bağlayın ve Çalıştır'a (yürüt.png) Android Studio araç çubuğunda. Günlük Tanımlayıcıları düğmesine dokunmak, FCM kayıt belirtecini ve Firebase Kurulum Kimliğini logcat'e kaydeder. Çıktı şöyle görünmelidir:
D/FcmAndFiam: Firebase Installations ID: emMc5...AsJfb
  FCM registration token: emMc5LART6GV7...r0Q

5. Test FCM mesajı gönder

FCM mesajları hem Firebase konsolundan hem de FCM REST API'sinden gönderilebilir. Bu codelab'de bir FCM bildirim mesajı oluşturup cihazımıza göndereceğiz. Bildirim mesajları, sistemin bildirim alanında görüntülenen mesajlardır. Bir test FCM mesajı göndererek:

  1. Uygulamanın arka planda olduğundan emin olun (ana ekrana gidin)
  2. Firebase konsoluna gidin ve sol gezinme bölmesinde Bulut Mesajlaşma'yı seçin
  3. İlk mesajınızı gönderin'i seçin
  4. Mesaj için bir başlık ve gövde ekleyin, ardından Test mesajı gönder'i tıklayın.

207ced65f5245ada.png

  1. FCM kayıt belirtecini ekleyin, ardından teste tıklayın

f3556c6a8a6453fe.png

  1. Cihazdaki ekran bildirimini gözlemleyin
  2. Bildirime dokunmak uygulamayı açar

6. Test FIAM mesajını gönderin

Firebase Uygulama İçi Mesajlaşma, çeşitli kullanıcı etkinliklerinin bir sonucu olarak tetiklenebilir. Test mesajı, Uygulama İçi Mesajı tetiklemek için uygulama açma olayını kullanır. Bir test FIAM mesajı gönderin:

  1. Uygulamanın arka planda olduğundan emin olun (ana ekrana gidin)
  2. Firebase konsoluna gidin ve sol gezinme bölmesinde Uygulama İçi Mesajlaşma'yı seçin
  3. İlk kampanyanızı oluşturun'u seçin
  4. En iyi banner kampanyasını seçin ve mesajın başlığını ve gövdesini girin
  5. Cihazda test et'e tıklayın

69f6ea5efff240d1.png

  1. Kurulum Kimliği ekleyin ve Test Et'e tıklayın

24b101edfab47144.png

  1. Uygulamayı yeniden aç
  2. Uygulama mesajında ​​gözlemleyin

7. Tebrikler

Tebrikler, hem FCM hem de FIAM mesajlarını başarıyla gönderdiniz. Artık, uygulamanızı ön planda mı yoksa arka planda mı kullanıyorlarsa kullanıcılarınızla nasıl etkileşim kuracağınızı biliyorsunuz.

daha fazla okuma

Sıradaki ne

  • Kullanıcılara kendi Android uygulamanızda mesaj gönderin.

Referans dokümanlar