Memecahkan masalah opsi inisialisasi

Jika Anda menginisialisasi aplikasi tanpa serangkaian opsi Firebase yang valid, pengguna baru aplikasi Anda akan mengalami masalah serius.

Opsi Firebase adalah kumpulan parameter yang diperlukan oleh layanan agar berhasil berkomunikasi dengan API server Firebase dan untuk mengaitkan data klien dengan proyek Firebase dan aplikasi Firebase Anda. Layanan Firebase mengandalkan opsi Firebase yang valid yang tersedia dari inti Firebase/pustaka umum yang dibuat selama inisialisasi Firebase.

Layanan Firebase yang berbeda memerlukan opsi Firebase yang berbeda untuk berfungsi dengan baik, tetapi semua layanan Firebase memerlukan opsi Firebase berikut:

  • Kunci API - Catatan: ini bukan kunci server FCM, lihat kunci server FCM .
    Contoh nilai: AIzaSyDOCAbC123dEf456GhI789jKl012-MnO
  • ID Proyek - Contoh nilai: myapp-project-123 .
  • ID Aplikasi ("AppID") - Pengidentifikasi unik untuk aplikasi Anda yang formatnya bergantung pada platform:
    • Untuk Android: mobilesdk_app_id —Catatan: ini bukan nama paket Android .
      Contoh nilai: 1:1234567890:android:321abc456def7890
    • Untuk iOS+: GOOGLE_APP_ID —Catatan: ini bukan ID Apple Bundle .
      Contoh nilai: 1:1234567890:ios:321abc456def7890

Memecahkan masalah aplikasi Android

Untuk meningkatkan keamanan, Firebase SDK diperbarui pada 27 Februari dan setelah itu mengganti layanan Firebase Instance ID dengan ketergantungan pada Firebase Installations API .

Penginstalan Firebase memberlakukan keberadaan dan validitas kunci API opsi Firebase wajib, ID Proyek, dan ID Aplikasi untuk mengaitkan data klien dengan proyek Firebase Anda. Lihat FirebaseOptions untuk informasi selengkapnya.

Firebase Cloud Messaging (FCM) dengan Firebase Instance ID (IID)

Jika pengguna baru aplikasi Anda mengalami masalah dengan FCM, mungkin Anda menginisialisasi Firebase tanpa serangkaian opsi Firebase yang diperlukan.

Aplikasi Anda mungkin menggunakan file konfigurasi google-services.json yang tidak lengkap atau salah; atau aplikasi Anda menginisialisasi Firebase secara terprogram tanpa set lengkap opsi Firebase yang diperlukan.

Akibatnya, layanan Firebase seperti Firebase Cloud Messaging tidak akan berfungsi bagi pengguna akhir yang menginstal aplikasi Anda setelah dirilis dengan SDK Firebase yang diperbarui. Selain itu, permintaan berulang yang gagal ke Firebase dapat memperlambat pengalaman pengguna akhir aplikasi Anda.

Apa yang harus saya lakukan?

Untuk memperbaiki layanan Firebase yang tidak berfungsi untuk aplikasi Anda:

  1. Perbarui aplikasi Anda dengan menginisialisasi Firebase dengan kunci API yang valid dari proyek Anda, ID Proyek yang valid, dan ID Aplikasi yang valid ( mobilesdk_app_id atau "App Id").
  2. Rilis versi baru aplikasi Anda ke Play Store.

Memecahkan masalah aplikasi Apple

Untuk meningkatkan keamanan, Firebase SDK diperbarui pada 14 Januari dan setelah itu mengganti layanan Firebase Instance ID dengan ketergantungan pada Firebase Installations API .

Penginstalan Firebase memberlakukan keberadaan dan validitas kunci API opsi Firebase wajib, ID Proyek, dan ID Aplikasi untuk mengaitkan data klien dengan proyek Firebase Anda. Lihat FIROptions untuk informasi lebih lanjut.

Firebase Cloud Messaging (FCM) dengan Firebase Instance ID (IID)

Jika pengguna baru aplikasi Anda mengalami masalah dengan FCM, mungkin Anda menginisialisasi Firebase tanpa serangkaian opsi Firebase yang diperlukan.

Aplikasi Anda mungkin menggunakan file konfigurasi GoogleService-Info.plist yang tidak lengkap atau tidak valid; atau aplikasi Anda menginisialisasi Firebase secara terprogram tanpa set lengkap opsi Firebase yang diperlukan.

Akibatnya, layanan Firebase seperti Firebase Cloud Messaging tidak akan berfungsi bagi pengguna akhir yang menginstal aplikasi Anda setelah dirilis dengan SDK Firebase yang diperbarui. Selain itu, permintaan berulang yang gagal ke Firebase dapat memperlambat pengalaman pengguna akhir aplikasi Anda.

Apa yang harus saya lakukan?

Untuk memperbaiki layanan Firebase yang tidak berfungsi untuk aplikasi Anda:

  1. Perbarui aplikasi Anda dengan menginisialisasi Firebase dengan kunci API proyek yang valid, ID Proyek yang valid, dan ID Aplikasi yang valid ( GOOGLE_APP_ID atau "ID Aplikasi").
    1. Proses inisialisasi default menggunakan file konfigurasi Firebase : Unduh file konfigurasi GoogleService-Info.plist Anda dari Firebase console, lalu ganti file yang ada di aplikasi Anda.
    2. Inisialisasi terprogram menggunakan objek FIROptions : Unduh file konfigurasi GoogleService-Info.plist Anda dari Firebase console untuk menemukan kunci API, ID Proyek, dan ID Aplikasi Anda, lalu perbarui nilai ini di objek FIROptions di aplikasi Anda.
  2. Rilis versi baru aplikasi Anda ke App Store.

Kunci Server FCM

Jika aplikasi Anda menggunakan kunci Server FCM daripada kunci Cloud API, ini dapat menyebabkan kerentanan keamanan jika Anda menggunakan kunci Server FCM yang sama untuk mengirim pemberitahuan push melalui FCM. Dalam hal ini, kami sangat menyarankan Anda untuk merevisi cara server Anda mengautentikasi permintaan pengiriman ke FCM .

Perhatikan bahwa Kunci Server FCM (yang tidak sama dengan kunci Firebase/Cloud API) tidak boleh disertakan dalam aplikasi, karena dapat disalahgunakan untuk mengirim pemberitahuan push atas nama proyek Anda.