개발자 소유 앱 식별

특정 기기의 분석 또는 사기 방지와 같은 사용 사례의 경우 조직이 소유한 앱 집합 간에 사용이나 작업의 상관관계를 지정해야 할 수 있습니다. Google Play 서비스앱 세트 ID라는 개인 정보를 안전하게 보호하는 옵션을 제공합니다.

앱 세트 ID 범위

앱 세트 ID에는 다음 정의된 범위 중 하나가 포함될 수 있습니다. 특정 ID가 연결된 범위를 확인하려면 getScope()를 호출하세요.

Google Play 개발자 범위

Google Play 스토어에서 설치한 앱의 경우 App Set ID API는 동일한 Google Play 개발자 계정에 게시된 앱 집합으로 범위가 지정된 ID를 반환합니다.

예를 들어 Google Play 개발자 계정으로 두 개의 앱을 게시하고 두 앱 모두 Google Play 스토어를 통해 동일한 기기에 설치되었다고 가정해 보겠습니다. 앱은 해당 기기에서 동일한 앱 세트 ID를 공유합니다. ID는 앱이 서로 다른 키로 서명된 경우에도 동일합니다.

앱 범위

다음 조건 중 하나에서 앱 세트 ID SDK는 지정된 기기의 호출 앱 자체에 고유한 ID를 반환합니다.

  • 앱이 Google Play 스토어가 아닌 설치 프로그램에 의해 설치되었습니다.
  • Google Play 서비스가 앱의 Google Play 개발자 계정을 확인할 수 없습니다.
  • 앱이 Google Play 서비스가 없는 기기에 설치되어 있습니다.

앱 세트 ID의 캐시된 값을 사용하지 않음

다음 조건 중 하나에서 기기에 Google Play 스토어에 설치된 특정 앱 세트의 앱 세트 ID를 재설정할 수 있습니다.

  • 동일한 ID 값을 공유하는 앱 그룹이 13개월 이상 앱 세트 ID API에 액세스하지 않았습니다.
  • 지정된 앱 집합의 마지막 앱이 기기에서 제거됩니다.
  • 사용자가 기기를 초기화합니다.

앱은 필요할 때마다 SDK를 사용하여 ID 값을 검색해야 합니다.

앱에 앱 세트 ID SDK 추가

다음 스니펫은 앱 세트 ID 라이브러리를 사용하는 build.gradle 파일의 예를 보여줍니다.

dependencies {
    implementation 'com.google.android.gms:play-services-appset:16.0.2'
}

다음 샘플 스니펫은 Google Play 서비스에서 Tasks API를 사용하여 앱 세트 ID를 비동기식으로 검색하는 방법을 보여줍니다.

Kotlin

val client = AppSet.getClient(applicationContext) as AppSetIdClient
val task: Task<AppSetIdInfo> = client.appSetIdInfo as Task<AppSetIdInfo>

task.addOnSuccessListener({
    // Determine current scope of app set ID.
    val scope: Int = it.scope

    // Read app set ID value, which uses version 4 of the
    // universally unique identifier (UUID) format.
    val id: String = it.id
})

Java

Context context = getApplicationContext();
AppSetIdClient client = AppSet.getClient(context);
Task<AppSetIdInfo> task = client.getAppSetIdInfo();

task.addOnSuccessListener(new OnSuccessListener<AppSetIdInfo>() {
    @Override
    public void onSuccess(AppSetIdInfo info) {
        // Determine current scope of app set ID.
        int scope = info.getScope();

        // Read app set ID value, which uses version 4 of the
        // universally unique identifier (UUID) format.
        String id = info.getId();
    }
});