Google은 흑인 공동체를 위한 인종적 평등을 추구하기 위해 노력하고 있습니다. 자세히 알아보기

인스턴스 ID 데이터 관리

컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.

인스턴스 ID는 앱의 개별 설치를 식별합니다. 각 인스턴스 ID는 특정 앱 및 기기에 고유하므로 Firebase 서비스에서 특정 앱 인스턴스를 참조할 수 있는 방법을 제공합니다. 예를 들어, 클라우드 메시징은 인스턴스 ID를 사용하여 메시지를 보낼 장치를 결정합니다.

여러 Firebase 서비스는 인스턴스 ID를 사용하여 기능을 강화합니다.

  • 해석학
  • Crashlytics
  • 클라우드 메시징
  • 원격 구성

인스턴스 ID와 연결된 앱 데이터 관리

인스턴스 ID를 사용하여 설치를 식별하는 서비스는 관련 데이터를 해당 장치와 연결하는 키로 사용하기도 합니다. 예를 들어 Crashlytics는 인스턴스 ID를 사용하여 기기에서 발생하는 충돌을 기록하고 원격 구성은 이를 사용하여 구성을 가져오며 Analytics는 인스턴스 ID를 사용하여 특정 대상을 추적합니다.

인스턴스 ID와 관련된 데이터는 일반적으로 개인 식별이 불가능 하지만 사용자에게 관리 옵션을 제공하는 것은 여전히 ​​도움이 될 수 있습니다. 이를 위해 Firebase는 인스턴스 ID 관련 데이터 수집을 관리하는 두 가지 방법을 제공합니다.

  • 인스턴스 ID를 삭제합니다. 서버 측 또는 클라이언트 측 API 호출로 인스턴스 ID를 삭제할 수 있습니다. 인스턴스 ID를 삭제하면 ID 자체 및 이와 관련된 모든 데이터가 삭제됩니다.
  • ID를 생성하는 서비스를 비활성화합니다. 인스턴스 ID를 사용하는 대부분의 Firebase 서비스는 시작 시 기기에 새 ID가 없으면 자동으로 새 ID를 생성합니다. 앱이 원치 않는 인스턴스 ID를 생성하지 않도록 하려면 해당 서비스에 대한 자동 초기화를 비활성화하십시오.

인스턴스 ID 삭제

인스턴스 ID를 삭제하면 위에 나열된 Firebase 서비스에서 해당 ID와 연결된 데이터도 삭제됩니다. 따라서 ID 삭제는 사용자 데이터를 지우는 데 유용한 도구이지만 주의 사항도 있습니다. 인스턴스 ID에 의존하는 여러 서비스를 사용하는 경우 ID를 삭제하면 모든 서비스에서 데이터가 지워집니다.

앱에서 모든 Instance-ID 생성 서비스를 비활성화하지 않는 한 Instance ID 서비스는 며칠 이내에 새 ID를 생성합니다. Firebase는 새로 생성된 ID를 완전히 새로운 앱 인스턴스로 간주하고 어떤 식으로든 이전 ID와 연결하지 않습니다.

클라이언트 API 호출로 ID 삭제

Firebase 서비스에서 생성된 ID를 삭제하려면 Firebase Instance ID API에서 적절한 메서드를 호출하세요.

빠른

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

오브젝티브-C

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

기계적 인조 인간

FirebaseInstanceId.deleteInstanceId();

서버 API 호출로 아이디 삭제

서버 API 호출로 인스턴스 ID를 삭제하려면 Firebase Admin SDK를 서버에 아직 추가 하지 않은 경우 추가합니다.

추가되면 선택한 언어로 인스턴스 ID 삭제 기능을 호출하여 ID를 삭제합니다.

노드.js

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

admin.instanceId().deleteInstanceId(idToDelete);

자바

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

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

파이썬

  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)

가다

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

서버 API 호출로 인스턴스 ID를 삭제하면 Firebase 서비스에서 연결된 데이터를 삭제하고 해당 ID에 대한 새 데이터 수락을 중지하며 며칠 이내에 클라이언트 앱에 ID가 삭제되었음을 알립니다. Firebase에서 클라이언트 앱에 알릴 때까지 일부 앱 서비스의 기능이 저하될 수 있습니다.

현재 인스턴스 ID를 삭제하고 새로운 독립 ID로 Firebase 서비스를 즉시 사용하려면 위의 클라이언트 API 중 하나를 사용하여 삭제를 처리하세요.

인스턴스 ID 생성 비활성화

인스턴스 ID를 사용하는 서비스는 현재 ID가 없는 앱에서 초기화될 때 새 ID를 자동으로 생성합니다. 일반적으로 이러한 서비스는 앱이 실행될 때 자동으로 초기화됩니다. 인스턴스 ID 생성을 비활성화하려면 이를 사용하는 서비스에 대한 자동 초기화를 비활성화해야 합니다.

일반적인 접근 방식은 사용자에게 데이터 수집에 대한 옵트인 옵션을 제공하는 것입니다. 인스턴스 ID를 사용하는 서비스에 대한 자동 초기화를 비활성화하고, 사용자에게 데이터 수집에 대한 동의를 묻는 대화 상자를 구현하고, 서비스를 한 번 수동으로 다시 활성화합니다. 동의가 있습니다.

Instance-ID 사용 서비스에 대한 자동 초기화를 비활성화하고 대신 수동으로 초기화하는 방법을 알아보려면 아래 가이드를 읽으십시오.