Google is committed to advancing racial equity for Black communities. See how.
This page was translated by the Cloud Translation API.
Switch to English

Quản lý dữ liệu ID phiên bản

ID phiên bản xác định từng cài đặt ứng dụng của bạn. Vì mỗi ID phiên bản là duy nhất cho một ứng dụng và thiết bị cụ thể, chúng cung cấp cho các dịch vụ Firebase một cách để tham chiếu đến các phiên bản ứng dụng cụ thể. Ví dụ: Nhắn tin qua đám mây sử dụng ID phiên bản để xác định thiết bị nào sẽ gửi tin nhắn.

Một số dịch vụ Firebase sử dụng ID phiên bản để tăng sức mạnh cho các tính năng của chúng:

  • phân tích
  • Crashlytics
  • Nhắn tin qua đám mây
  • Phỏng đoán
  • Cấu hình từ xa

Quản lý dữ liệu ứng dụng được liên kết với ID phiên bản

Các dịch vụ sử dụng ID phiên bản để xác định các cài đặt cũng sử dụng chúng làm khóa để liên kết dữ liệu có liên quan với thiết bị đó. Ví dụ: Crashlytics sử dụng ID phiên bản để ghi lại các sự cố xảy ra trên thiết bị, Cấu hình từ xa sử dụng chúng để tìm nạp cấu hình và Analytics sử dụng ID phiên bản để theo dõi các đối tượng cụ thể.

Dữ liệu được liên kết với ID phiên bản thường không nhận dạng cá nhân, nhưng vẫn có thể hữu ích khi cung cấp cho người dùng một tùy chọn để quản lý nó. Vì vậy, Firebase cung cấp hai cách để quản lý việc thu thập dữ liệu liên quan đến ID phiên bản:

  • Xóa ID phiên bản. Bạn có thể xóa ID phiên bản bằng lệnh gọi API phía máy chủ hoặc máy khách. Xóa ID phiên bản sẽ xóa chính ID đó và tất cả dữ liệu được liên kết với nó.
  • Tắt các dịch vụ tạo ID. Hầu hết các dịch vụ Firebase sử dụng ID phiên bản sẽ tự động tạo ID mới nếu không có ID trên thiết bị khi chúng khởi động. Để đảm bảo ứng dụng của bạn không tạo ID phiên bản không mong muốn, hãy tắt tự động khởi tạo cho các dịch vụ đó.

Xóa ID phiên bản

Xóa ID phiên bản cũng xóa dữ liệu được liên kết với ID đó trong bất kỳ dịch vụ Firebase nào được liệt kê ở trên. Điều đó làm cho việc xóa ID trở thành một công cụ hữu ích trong việc xóa dữ liệu người dùng, nhưng cũng đi kèm với một cảnh báo: nếu bạn đang sử dụng nhiều dịch vụ dựa trên ID phiên bản, việc xóa ID sẽ xóa dữ liệu khỏi tất cả chúng.

Dịch vụ ID phiên bản tạo ID mới trong vòng vài ngày, trừ khi bạn tắt tất cả các dịch vụ tạo ID phiên bản trong ứng dụng của mình. Firebase coi ID mới tạo là một phiên bản ứng dụng hoàn toàn mới và không liên kết nó với ID trước đó theo bất kỳ cách nào.

Xóa ID bằng lệnh gọi API ứng dụng khách

Để xóa các ID do các dịch vụ Firebase tạo, hãy gọi phương thức thích hợp từ API ID phiên bản Firebase:

Nhanh

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

Xóa ID bằng lệnh gọi API máy chủ

Để xóa ID phiên bản có lệnh gọi API máy chủ, hãy thêm SDK quản trị viên Firebase vào máy chủ của bạn , nếu bạn chưa có.

Sau khi nó được thêm vào, hãy xóa ID thông qua một cuộc gọi đến chức năng xóa ID phiên bản bằng ngôn ngữ bạn chọn:

Node.js

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

admin.instanceId().deleteInstanceId(idToDelete);

Java

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

Đi

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

Khi bạn xóa ID phiên bản bằng lệnh gọi API máy chủ, các dịch vụ Firebase sẽ xóa dữ liệu được liên kết, ngừng chấp nhận dữ liệu mới cho ID đó và trong vòng vài ngày, thông báo cho ứng dụng khách rằng ID đã bị xóa. Cho đến khi Firebase thông báo cho ứng dụng khách, một số dịch vụ của ứng dụng có thể bị giảm chức năng.

Nếu bạn muốn xóa ID phiên bản hiện tại và sử dụng ngay các dịch vụ Firebase với ID mới, độc lập, hãy sử dụng một trong các API ứng dụng khách ở trên để xử lý việc xóa.

Tắt tạo ID phiên bản

Các dịch vụ sử dụng ID phiên bản sẽ tự động tạo ID mới khi chúng được khởi chạy trong một ứng dụng hiện chưa có. Thông thường, các dịch vụ đó cũng tự động khởi chạy khi ứng dụng của bạn khởi chạy. Để tắt tính năng tạo ID phiên bản, bạn phải tắt tính năng tự động khởi tạo cho các dịch vụ sử dụng chúng.

Cách tiếp cận phổ biến là cung cấp cho người dùng một tùy chọn để chọn tham gia thu thập dữ liệu: tắt tự động khởi tạo cho các dịch vụ sử dụng ID phiên bản, triển khai hộp thoại nhắc người dùng đồng ý với việc thu thập dữ liệu và bật lại dịch vụ theo cách thủ công một lần bạn có sự đồng ý.

Đọc hướng dẫn bên dưới để tìm hiểu cách tắt tự động khởi tạo cho các dịch vụ sử dụng ID phiên bản và thay vào đó khởi chạy chúng theo cách thủ công: