Arka plandaki bir uygulamaya test mesajı gönderme

FCM'yi kullanmaya başlamak için en basit kullanım alanını oluşturun: şu adresten test bildirim mesajı: Bildirim oluşturucuyu geliştirme cihazına Uygulama cihazda arka plandayken Bu sayfada, kurulumdan doğrulama işlemine kadar bunu başarmak için gereken tüm adımlar listelenmiştir. — Bu bilgiler arasında daha önce tamamlamış olduğunuz Android istemci uygulaması yüklemiş olmanız gerekir tercih edebilirsiniz.

SDK'yı ayarlama

Bu bölümde, daha önce etkinleştirdiyseniz tamamlamış olabileceğiniz görevler ele alınmaktadır diğer Firebase özelliklerini kullanabilirsiniz.

Başlamadan önce

  • Android Studio'yu yükleme veya güncelleme sürümüne geri yükleyebilirsiniz.

  • Projenizin bu gereksinimleri karşıladığından emin olun (bazı ürünlerin daha katı şartlara sahip olabilir):

    • API düzeyi 19'u hedefler (KitKat) veya üzeri
    • Android 4.4 veya sonraki bir sürümü kullanmalıdır
    • Kullanım Jetpack (AndroidX), Aşağıdaki sürümle ilgili koşullar karşılanmalıdır:
      • com.android.tools.build:gradle 7.3.0 veya sonraki sürümler
      • compileSdkVersion 28 yaş veya üzeri
  • Fiziksel bir cihaz ayarlayın veya emülatörü kullanarak uygulamanızı çalıştırın.
    Google Play'e bağımlılığı olan Firebase SDK'larının hizmetleri için cihaz veya emülatöründe Google Play Hizmetleri yüklü olmalıdır.

  • Google Hesabınızla Firebase'de oturum açın hesap.

Henüz bir Android projeniz yoksa ve bir Firebase'i denemek istiyorsanız hızlı başlangıç örneklerimizden birini indirebilirsiniz.

Firebase projesi oluşturma

Firebase'i Android uygulamanıza eklemeden önce Firebase oluşturmanız gerekir projesini anlatacağım. Ziyaret edin: Şu konular hakkında daha fazla bilgi edinmek için Firebase Projelerini Anlama: Firebase projeleri.

Uygulamanızı Firebase'e kaydedin

Firebase'i Android uygulamanızda kullanmak için, uygulamanızı Firebase projesi. Uygulamanızı kaydetme işlemi genellikle "ekleme" olarak adlandırılır uygulamanızı belirler.

  1. Firebase konsoluna gidin.

  2. Projeye genel bakış sayfasının ortasındaki Android simgesini tıklayın () veya kurulum iş akışını başlatmak için Uygulama ekle'yi tıklayın.

  3. Uygulamanızın paket adını Android paket adı alanına girin.

    ziyaret edin.
  4. (İsteğe bağlı) Diğer uygulama bilgilerini girin: Uygulama takma adı ve SHA-1 imza sertifikası hatalarını ayıkla.

  5. Uygulamayı kaydet'i tıklayın.

Firebase yapılandırma dosyası ekleme

  1. Firebase Android yapılandırma dosyasını indirip ekleyin. (google-services.json) uygulamanıza:

    1. Firebase Android sürümünüzü edinmek için google-services.json'u indir'i tıklayın. yapılandırma dosyası.

    2. Yapılandırma dosyanızı şu uygulamanın modül (uygulama düzeyi) kök dizinine taşıyın: en iyi şekilde yararlanabilirsiniz.

  2. google-services.json yapılandırma dosyanızdaki değerleri erişilebilir hale getirmek için Firebase SDK'larını kullanıyorsanız Google hizmetleri Gradle eklentisi (google-services).

    1. Kök düzeyindeki (proje düzeyinde) Gradle dosyanızda (<project>/build.gradle.kts veya <project>/build.gradle), Bağımlılık olarak Google hizmetleri eklentisi:

      Kotlin

      plugins {
        id("com.android.application") version "7.3.0" apply false
        // ...
      
        // Add the dependency for the Google services Gradle plugin
        id("com.google.gms.google-services") version "4.4.2" apply false
      }
      

      Groovy

      plugins {
        id 'com.android.application' version '7.3.0' apply false
        // ...
      
        // Add the dependency for the Google services Gradle plugin
        id 'com.google.gms.google-services' version '4.4.2' apply false
      }
      
    2. Modülünüz (uygulama düzeyinde) Gradle dosyanızda (genellikle <project>/<app-module>/build.gradle.kts veya <project>/<app-module>/build.gradle), Google hizmetleri eklentisini ekleyin:

      Kotlin

      plugins {
        id("com.android.application")
      
        // Add the Google services Gradle plugin
        id("com.google.gms.google-services")
        // ...
      }
      

      Groovy

      plugins {
        id 'com.android.application'
      
        // Add the Google services Gradle plugin
        id 'com.google.gms.google-services'
        // ...
      }
      

Firebase SDK'larını uygulamanıza ekleyin

  1. Modül (uygulama düzeyinde) Gradle dosyanızda (genellikle <project>/<app-module>/build.gradle.kts veya <project>/<app-module>/build.gradle), ve Android için Firebase Cloud Messaging kitaplığına bağımlılığı ekleyin. Şunu kullanmanızı öneririz: Firebase Android BoM Kitaplık'ta sürüm oluşturmayı kontrol etmek için

    Firebase Cloud Messaging ile optimum bir deneyim için şunları yapmanızı öneririz: Google Analytics'i etkinleştirme Firebase projenize ekleyin ve uygulamanıza Google Analytics için Firebase SDK'sını ekleyin.

    dependencies {
        // Import the BoM for the Firebase platform
        implementation(platform("com.google.firebase:firebase-bom:33.1.2"))
    
        // Add the dependencies for the Firebase Cloud Messaging and Analytics libraries
        // When using the BoM, you don't specify versions in Firebase library dependencies
        implementation("com.google.firebase:firebase-messaging")
        implementation("com.google.firebase:firebase-analytics")
    }
    

    Firebase Android BoM'u kullanarak, Uygulamanız her zaman Firebase Android kitaplıklarının uyumlu sürümlerini kullanacaktır.

    (Alternatif) BoM'u kullanmadan Firebase kitaplığı bağımlılıklarını ekleyin

    Firebase BoM'yi kullanmamayı tercih ederseniz her Firebase kitaplığı sürümünü belirtmeniz gerekir değerini alır.

    Uygulamanızda birden çok Firebase kitaplığı kullanıyorsanız, kitaplık sürümlerini yönetmek için BoM kullanmanızı öneririz. Böylece, uyumlu olur.

    dependencies {
        // Add the dependencies for the Firebase Cloud Messaging and Analytics libraries
        // When NOT using the BoM, you must specify versions in Firebase library dependencies
        implementation("com.google.firebase:firebase-messaging:24.0.0")
        implementation("com.google.firebase:firebase-analytics:22.0.2")
    }
    
    .
    'nı inceleyin. Kotlin'e özel bir kitaplık modülü mü arıyorsunuz? Başlamak için kalan süre: Ekim 2023 (Firebase BoM 32.5.0), hem Kotlin hem de Java geliştiricileri (ayrıntılar için bkz. bu girişimle ilgili SSS).

  2. Android projenizi Gradle dosyalarıyla senkronize edin.

Kayıt jetonuna erişme

Belirli bir cihaza mesaj göndermek için o cihazın kayıt jetonu. Çünkü jetonu alan adındaki bir alana girmeniz Bu eğiticiyi tamamlamak için Notifications Console'a gidin. Jetonu kopyaladığınızdan emin olun veya güvenli bir şekilde saklamanızı öneririz.

Uygulamanız ilk kez başlatıldığında FCM SDK'sı bir kayıt oluşturur jeton olacaktır. Tek bir cihazı veya oluşturmak istiyorsanız, erişim kapsamını genişleterek bu jetona erişmeniz FirebaseMessagingService ve onNewToken geçersiz kılınıyor.

Bu bölümde, jetonun nasıl alınacağı ve değişikliklerin nasıl izleneceği açıklanmaktadır jetona aktarılmalıdır. Jeton, ilk gösterimden sonra döndürülebileceği için startup'ı kullanıyorsanız en son güncellenmiş kaydı almanız jeton.

Kayıt jetonu aşağıdaki durumlarda değişebilir:

  • Uygulama yeni bir cihaza geri yüklenir.
  • Kullanıcı uygulamayı kaldırır/yeniden yükler
  • Kullanıcı uygulama verilerini siler.

Geçerli kayıt jetonunu al

Geçerli jetonu almanız gerektiğinde FirebaseMessaging.getInstance().getToken():

Kotlin+KTX

FirebaseMessaging.getInstance().token.addOnCompleteListener(OnCompleteListener { task ->
    if (!task.isSuccessful) {
        Log.w(TAG, "Fetching FCM registration token failed", task.exception)
        return@OnCompleteListener
    }

    // Get new FCM registration token
    val token = task.result

    // Log and toast
    val msg = getString(R.string.msg_token_fmt, token)
    Log.d(TAG, msg)
    Toast.makeText(baseContext, msg, Toast.LENGTH_SHORT).show()
})

Java

FirebaseMessaging.getInstance().getToken()
    .addOnCompleteListener(new OnCompleteListener<String>() {
        @Override
        public void onComplete(@NonNull Task<String> task) {
          if (!task.isSuccessful()) {
            Log.w(TAG, "Fetching FCM registration token failed", task.getException());
            return;
          }

          // Get new FCM registration token
          String token = task.getResult();

          // Log and toast
          String msg = getString(R.string.msg_token_fmt, token);
          Log.d(TAG, msg);
          Toast.makeText(MainActivity.this, msg, Toast.LENGTH_SHORT).show();
        }
    });

Jeton oluşturmayı izleme

Yeni jeton oluşturulduğunda onNewToken geri çağırması tetiklenir.

Kotlin+KTX

/**
 * Called if the FCM registration token is updated. This may occur if the security of
 * the previous token had been compromised. Note that this is called when the
 * FCM registration token is initially generated so this is where you would retrieve the token.
 */
override fun onNewToken(token: String) {
    Log.d(TAG, "Refreshed token: $token")

    // If you want to send messages to this application instance or
    // manage this apps subscriptions on the server side, send the
    // FCM registration token to your app server.
    sendRegistrationToServer(token)
}

Java

/**
 * There are two scenarios when onNewToken is called:
 * 1) When a new token is generated on initial app startup
 * 2) Whenever an existing token is changed
 * Under #2, there are three scenarios when the existing token is changed:
 * A) App is restored to a new device
 * B) User uninstalls/reinstalls the app
 * C) User clears app data
 */
@Override
public void onNewToken(@NonNull String token) {
    Log.d(TAG, "Refreshed token: " + token);

    // If you want to send messages to this application instance or
    // manage this apps subscriptions on the server side, send the
    // FCM registration token to your app server.
    sendRegistrationToServer(token);
}

Jetonu aldıktan sonra uygulama sunucunuza ve mağazanıza gönderebilirsiniz tercih ettiğiniz yöntemi kullanarak yapabilirsiniz.

Test bildirimi mesajı gönder

  1. Uygulamayı hedef cihaza yükleyip çalıştırın. Apple cihazlarda uzaktan bildirim alma izni isteğini kabul edin.

  2. Uygulamanın cihazda arka planda bulunduğundan emin olun.

  3. Firebase konsolunda Mesajlaşma sayfasını açın.

  4. Bu ilk mesajınızsa İlk mesajınızı oluşturun kampanya.

    1. Firebase Notification mesajları'nı ve ardından Create'i (Oluştur) seçin.
  5. Aksi takdirde, Kampanyalar sekmesinde Yeni kampanya'yı seçin. ve ardından Bildirimler'i tıklayın.

  6. Mesaj metnini girin. Diğer tüm alanlar isteğe bağlıdır.

  7. Sağ bölmeden Test mesajı gönder'i seçin.

  8. FCM kayıt jetonu ekleyin etiketli alana kaydı girin bölümündeki talimatları uygulayın.

  9. Test et'i seçin.

Test et'i seçmenizden sonra, hedeflenen istemci cihazı (uygulama arka plan) bildirimi alır.

Uygulamanıza mesaj teslimiyle ilgili analizler için bkz. FCM raporlama kontrol paneli, Apple ve Android cihazlarda gönderilen ve açılan iletilerin sayısı "gösterimler" için veriler (kullanıcılar tarafından görülen bildirimler).

Sonraki adımlar

Ön plandaki uygulamalara mesaj gönderme

Uygulamanız açıkken bildirim mesajlarını başarıyla gönderdikten sonra görmek için Mesajları Android uygulamasında alma ile ön plandaki uygulamalara ileti göndermeye başlayın.

Bildirim mesajlarının ötesine geçin

Hesabınıza bildirim mesajlarının ötesine geçip diğer, daha gelişmiş davranışlar uygulamanız için aşağıdaki adımları uygulayın: