Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.

Kelola data ID Instans

ID Instance mengidentifikasi setiap penginstalan aplikasi Anda. Karena setiap ID Instance bersifat unik untuk aplikasi dan perangkat tertentu, ID tersebut memberi layanan Firebase cara untuk merujuk ke instance aplikasi tertentu. Misalnya, Cloud Messaging menggunakan ID Instance untuk menentukan perangkat mana yang akan dikirimi pesan.

Beberapa layanan Firebase menggunakan ID Instance untuk mendukung fitur mereka:

  • Analitik
  • Crashlytics
  • Pesan Awan
  • Konfigurasi Jarak Jauh

Kelola data aplikasi yang terkait dengan ID Instance

Layanan yang menggunakan ID Instans untuk mengidentifikasi penginstalan juga menggunakannya sebagai kunci untuk mengaitkan data yang relevan dengan perangkat tersebut. Misalnya, Crashlytics menggunakan ID Instance untuk mencatat error yang terjadi pada perangkat, Remote Config menggunakannya untuk mengambil konfigurasi, dan Analytics menggunakan ID Instance untuk melacak audiens tertentu.

Data yang terkait dengan ID Instance umumnya tidak mengidentifikasi pribadi, tetapi masih dapat membantu untuk memberikan opsi kepada pengguna untuk mengelolanya. Untuk itu, Firebase menawarkan dua cara untuk mengelola pengumpulan data terkait ID Instance:

  • Hapus ID Instance. Anda dapat menghapus ID Instance dengan panggilan API sisi server atau klien. Menghapus ID Instance akan menghapus ID itu sendiri dan semua data yang terkait dengannya.
  • Nonaktifkan layanan yang menghasilkan ID. Sebagian besar layanan Firebase yang menggunakan ID Instance secara otomatis menghasilkan ID baru jika tidak ada di perangkat saat dimulai. Untuk memastikan aplikasi Anda tidak membuat ID Instance yang tidak diinginkan, nonaktifkan inisialisasi otomatis untuk layanan tersebut.

Hapus ID Instance

Menghapus ID Instance juga menghapus data yang terkait dengan ID tersebut di salah satu layanan Firebase yang tercantum di atas. Itu membuat penghapusan ID alat yang berguna dalam menghapus data pengguna, tetapi juga dilengkapi dengan peringatan: jika Anda menggunakan beberapa layanan yang mengandalkan ID Instance, menghapus ID akan menghapus data dari semuanya .

Layanan ID Instance membuat ID baru dalam beberapa hari, kecuali Anda menonaktifkan semua layanan pembuat ID Instance di aplikasi Anda. Firebase menganggap ID yang baru dibuat sebagai instance aplikasi baru, dan tidak mengaitkannya dengan ID sebelumnya dengan cara apa pun.

Hapus ID dengan panggilan API klien

Untuk menghapus ID yang dihasilkan oleh layanan Firebase, panggil metode yang sesuai dari Firebase Instance ID API:

Cepat

InstanceID.instanceID().deleteID { error in
  if let error = error {
    print("Error deleting instance ID: \(error)")
  }
}

Objective-C

[FIRInstanceID instanceID] deleteIDWithHandler:^(NSError *error) {
  if error != nil {
    NSLog(@"Error deleting instance ID: %@", error);
  }
}];

Android

FirebaseInstanceId.deleteInstanceId();

Hapus ID dengan panggilan API server

Untuk menghapus ID Instance dengan panggilan API server, tambahkan Firebase Admin SDK ke server Anda , jika Anda belum melakukannya.

Setelah ditambahkan, hapus ID melalui panggilan ke fungsi penghapusan ID Instance dalam bahasa pilihan Anda:

Node.js

// An Instance ID sent from a client service SDK
const idToDelete = 'INSTANCE_ID';

admin.instanceId().deleteInstanceId(idToDelete);

Jawa

// An Instance ID sent from a client service SDK
String idToDelete = "INSTANCE_ID";

FirebaseInstanceId.getInstance().deleteInstanceIdAsync(idToDelete).get();

Python

  from firebase_admin import instance_id

  # An Instance ID sent from a client service SDK
  id_to_delete = 'INSTANCE_ID'

  instance_id.delete_instance_id(id_to_delete)

Pergi

client, err := app.InstanceId(ctx)
if err != nil {
  log.Fatalln("error initializing client", err)
}

iidToDelete := "INSTANCE_ID"
if err := client.DeleteInstanceId(ctx, iidToDelete); err != nil {
  log.Fatalln("error deleting iid", err)
}

Saat Anda menghapus ID Instance dengan panggilan API server, layanan Firebase menghapus data terkait, berhenti menerima data baru untuk ID tersebut, dan, dalam beberapa hari, memberi tahu aplikasi klien bahwa ID telah dihapus. Hingga Firebase memberi tahu aplikasi klien, beberapa layanan aplikasi mungkin mengalami penurunan fungsionalitas.

Jika Anda ingin menghapus ID Instance saat ini dan segera menggunakan layanan Firebase dengan ID baru yang independen, gunakan salah satu API Klien di atas untuk menangani penghapusan.

Nonaktifkan pembuatan ID Instance

Layanan yang menggunakan ID Instance secara otomatis menghasilkan ID baru saat diinisialisasi di aplikasi yang saat ini tidak memilikinya. Biasanya, layanan tersebut juga secara otomatis diinisialisasi saat aplikasi Anda diluncurkan. Untuk menonaktifkan pembuatan ID Instance, Anda harus menonaktifkan inisialisasi otomatis untuk layanan yang menggunakannya.

Pendekatan umum adalah memberi pengguna opsi untuk ikut serta dalam pengumpulan data: nonaktifkan inisialisasi otomatis untuk layanan yang menggunakan ID Instance, menerapkan dialog yang meminta pengguna untuk menyetujui pengumpulan data, dan mengaktifkan kembali layanan secara manual sekali Anda memiliki persetujuan.

Baca panduan di bawah ini untuk mengetahui cara menonaktifkan inisialisasi otomatis untuk layanan yang menggunakan ID Instans dan sebagai gantinya menginisialisasinya secara manual: