Catch up on everthing we announced at this year's Firebase Summit. Learn more

Arka plana sahip bir uygulamaya bir test mesajı gönderin

Bir test bildirim mesajı göndererek: En basit kullanım örneği oluşturmaktır FCM başlamak için Bildirimler besteci Uygulamanın cihazdaki arka planda olduğunda bir geliştirme cihazına. Bu sayfa listeler tüm adımları kurulumundan doğrulamasına, bunu başarmak için - bu varsa zaten tamamlanmış adımları kapsayabilir bir Android istemci uygulaması kurmak FCM.

SDK'yı kurun

Bu bölüm, uygulamanız için diğer Firebase özelliklerini zaten etkinleştirdiyseniz tamamlamış olabileceğiniz görevleri kapsar.

Sen başlamadan önce

  • Yükleme veya güncelleme Android Studio en son sürüme.

  • Projenizin şu gereksinimleri karşıladığından emin olun:

    • API seviyesi 19 (KitKat) veya üzerini hedefler
    • Android 4.4 veya üstünü kullanır
    • Kullanımları Jetpack (AndroidX) bu sürüm gereksinimlerini karşılayan içerir:
      • com.android.tools.build:gradle v3.2.1 veya sonrası
      • compileSdkVersion 28 veya sonrası
  • Fiziksel bir cihaz kurun veya bir kullanma emülatör uygulamanızı çalıştırın.
    O Not Google Play hizmetlerinde bir bağımlılık ile Firebase SDK'larını yüklü Google Play hizmetlerini olması cihazınızı veya emülatörü gerektirir.

  • Firebase oturum açın Google hesabınızı kullanarak.

Önceden bir Android projesi var ve sadece Firebase ürünü denemek istemiyorsanız, bizim birini indirebilirsiniz hızlı başlangıç örneklerinin .

Firebase projesi oluşturun

Firebase'i Android uygulamanıza eklemeden önce Android uygulamanıza bağlanmak için bir Firebase projesi oluşturmanız gerekir. Ziyaret Firebase Projeleri Anlayın Firebase projeleri hakkında daha fazla bilgi edinmek.

Uygulamanızı Firebase'e kaydedin

Firebase'i Android uygulamanızda kullanmak için uygulamanızı Firebase projenize kaydetmeniz gerekir. Uygulamanızı kaydetmeye genellikle uygulamanızı projenize "eklemek" denir.

  1. Git Firebase konsoluna .

  2. Proje genel bakış Sayfanın ortasında, Android simgesine (tıklayın ) veya kurulum iş akışını başlatmak için uygulamayı ekleyin.

  3. Android paketi adı alanına uygulamanızın paket adını girin.

  4. (İsteğe bağlı) diğer uygulama bilgileri girin: Uygulama adı ve hata ayıklama imzalama sertifikası SHA-1.

  5. Kayıt uygulamasını tıklayın.

Firebase yapılandırma dosyası ekleyin

  1. Firebase Android yapılandırma dosyasını uygulamanıza ekleyin:

    1. Senin Firebase Android yapılandırma dosyasını edinmek için İndirme google-services.json tıklayın ( google-services.json ).

    2. Yapılandırma dosyanızı uygulamanızın modül (uygulama düzeyi) dizinine taşıyın.

  2. Uygulamanızda Firebase ürünlerini etkinleştirmek için eklemek eklentisi google-hizmetlerini sizin Gradle dosyalara.

    1. Kök düzeyinde (proje düzeyi) Gradle dosyası (In build.gradle ), Google Hizmetleri Gradle eklentisi içerecek şekilde kurallar ekleyin. Google'ın Maven deposuna da sahip olduğunuzu kontrol edin.

      buildscript {
      
        repositories {
          // Check that you have the following line (if not, add it):
          google()  // Google's Maven repository
        }
      
        dependencies {
          // ...
      
          // Add the following line:
          classpath 'com.google.gms:google-services:4.3.10'  // Google Services plugin
        }
      }
      
      allprojects {
        // ...
      
        repositories {
          // Check that you have the following line (if not, add it):
          google()  // Google's Maven repository
          // ...
        }
      }
      
    2. Senin modülü (uygulama düzeyinde) Gradle dosyası (genellikle de app/build.gradle ), Google Hizmetleri Gradle eklentisi uygulanır:

      apply plugin: 'com.android.application'
      // Add the following line:
      apply plugin: 'com.google.gms.google-services'  // Google Services plugin
      
      android {
        // ...
      }
      

Uygulamanıza Firebase SDK'ları ekleyin

  1. Kullanılması Firebase Android Bom , senin modülü (uygulama düzeyinde) Gradle dosyası (genellikle Firebase Bulut Mesajlaşma Android kütüphanesi için bağımlılık beyan app/build.gradle ).

    Firebase Cloud Messaging ile Optimum deneyim için, tavsiye Google Analytics sağlayan sizin Firebase projesinde ve uygulamanızda Google Analytics'in Firebase SDK ekledi.

    Java

    dependencies {
        // Import the BoM for the Firebase platform
        implementation platform('com.google.firebase:firebase-bom:29.0.0')
    
        // Declare 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'
    }
    

    Kullanarak Firebase Android Bom , uygulamanızın her zaman Firebase Android kütüphanelerin uyumlu versiyonlarını kullanacak.

    (Alternatif) Bom kullanmadan Firebase kütüphane bağımlılıklarını beyan

    Firebase Malzeme Listesini kullanmamayı seçerseniz, her bir Firebase kitaplık sürümünü bağımlılık satırında belirtmeniz gerekir.

    Eğer uygulamanızda birden Firebase kitaplıkları kullanırsanız, biz çok tüm versiyonlar uyumlu olmasını sağlar kütüphane sürümlerini yönetmek için Bom kullanmanızı öneririz olduğunu unutmayın.

    dependencies {
        // Declare 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:23.0.0'
        implementation 'com.google.firebase:firebase-analytics:20.0.0'
    }
    

    Kotlin+KTX

    dependencies {
        // Import the BoM for the Firebase platform
        implementation platform('com.google.firebase:firebase-bom:29.0.0')
    
        // Declare 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-ktx'
        implementation 'com.google.firebase:firebase-analytics-ktx'
    }
    

    Kullanarak Firebase Android Bom , uygulamanızın her zaman Firebase Android kütüphanelerin uyumlu versiyonlarını kullanacak.

    (Alternatif) Bom kullanmadan Firebase kütüphane bağımlılıklarını beyan

    Firebase Malzeme Listesini kullanmamayı seçerseniz, her bir Firebase kitaplık sürümünü bağımlılık satırında belirtmeniz gerekir.

    Eğer uygulamanızda birden Firebase kitaplıkları kullanırsanız, biz çok tüm versiyonlar uyumlu olmasını sağlar kütüphane sürümlerini yönetmek için Bom kullanmanızı öneririz olduğunu unutmayın.

    dependencies {
        // Declare 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-ktx:23.0.0'
        implementation 'com.google.firebase:firebase-analytics-ktx:20.0.0'
    }
    

  2. Tüm bağımlılıkların gerekli sürümlere sahip olduğundan emin olmak için uygulamanızı senkronize edin.

Kayıt belirtecine erişin

Belirli bir cihaza mesaj göndermek için o cihazın kayıt jetonunu bilmeniz gerekir. Bu öğreticiyi tamamlamak için belirteci Bildirimler konsolundaki bir alana girmeniz gerekeceğinden, aldıktan sonra belirteci kopyaladığınızdan veya güvenli bir şekilde sakladığınızdan emin olun.

Uygulamanızın ilk başlangıcında, FCM SDK, istemci uygulama örneği için bir kayıt belirteci oluşturur. Eğer tek Cihazları hedeflemek veya cihaz grupları oluşturmak istiyorsanız, uzatarak bu sembolünüzü gerekir FirebaseMessagingService ve ağır basan onNewToken .

Bu bölüm, belirtecin nasıl alınacağını ve belirteçteki değişikliklerin nasıl izleneceğini açıklar. Belirteç, ilk başlatmadan sonra döndürülebildiğinden, en son güncelleştirilmiş kayıt belirtecini almanız şiddetle önerilir.

Kayıt jetonu şu durumlarda değişebilir:

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

Geçerli kayıt belirtecini al

Geçerli kodunu almasına gerektiğinde, çağrı FirebaseMessaging.getInstance().getToken() :

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();
        }
    });

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()
})

Belirteç oluşturmayı izleyin

onNewToken yeni belirteç oluşturulur zaman geri arama patlar.

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(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);
}

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)
}

Belirteci aldıktan sonra, uygulama sunucunuza gönderebilir ve tercih ettiğiniz yöntemi kullanarak saklayabilirsiniz.

Test bildirim mesajı gönder

  1. Uygulamayı hedef cihaza yükleyin ve çalıştırın.

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

  3. Bildirimler besteci ve Yeni bildirimi seçin.

  4. Mesaj metnini girin.

  5. Gönder test mesajı seçin.

  6. Alanında, FCM'yi kaydı jetonu ekle Bu kılavuzun bir önceki bölümde elde edilen belirteç kayıt girmek etiketli.

  7. Testi tıklayın

Eğer Testi tıkladıktan sonra, (arka planda uygulama ile) hedeflenen müşteri cihazı bildirimleri sistem tepsisinde bildirim almalıdır.

Uygulamanıza mesaj teslimi içgörü için bkz FCM raporlama gösterge tablosu ileti sayısı gönderilir ve Android uygulamaları "gösterim" (kullanıcılar tarafından görülen bildirimler) için verileriyle birlikte Apple ve Android cihazlarda açılan kaydeder.

Sonraki adımlar

Ön plandaki uygulamalara mesaj gönderin

Uygulama arka planda iken, bildirim mesajları gönderdikten sonra, bkz bir Android App iletiler alma ön plana uygulamalara gönderme başlamak için.

Bildirim mesajlarının ötesine geçin

Bildirim mesajlarının ötesine geçmek ve uygulamanıza daha gelişmiş başka davranışlar eklemek için bkz.: