Identyfikowanie aplikacji należących do dewelopera

W przypadkach takich jak analiza lub zapobieganie oszustwom na danym urządzeniu może być konieczne skorelowanie użycia lub działań w zestawie aplikacji należących do Twojej organizacji. Usługi Google Play oferują zapewniającą ochronę prywatności opcję o nazwie identyfikator zestawu aplikacji.

Zakres identyfikatora zestawu aplikacji

Identyfikator zestawu aplikacji może mieć jeden z podanych niżej zdefiniowanych zakresów. Aby określić zakres, z którym powiązany jest dany identyfikator, wywołaj metodę getScope().

Zakres programisty w Google Play

W przypadku aplikacji zainstalowanych ze Sklepu Google Play interfejs API identyfikatora zestawu aplikacji zwraca identyfikator ograniczony do zestawu aplikacji opublikowanych na tym samym koncie dewelopera w Google Play.

Załóżmy na przykład, że publikujesz na swoim koncie dewelopera w Google Play 2 aplikacje i obie są zainstalowane na tym samym urządzeniu za pomocą Sklepu Google Play. Aplikacje mają na urządzeniu ten sam identyfikator zestawu aplikacji. Identyfikator jest taki sam, nawet jeśli aplikacje są podpisane różnymi kluczami.

Zakres aplikacji

W dowolnym z tych warunków pakiet SDK z identyfikatorem zestawu aplikacji zwraca identyfikator unikalny dla samej aplikacji na danym urządzeniu:

  • Aplikacja jest instalowana przez instalatora innego niż Sklep Google Play.
  • Usługi Google Play nie mogą określić konta dewelopera w Google Play.
  • Aplikacja jest zainstalowana na urządzeniu bez Usług Google Play.

Nie polegaj na wartości identyfikatora zestawu aplikacji w pamięci podręcznej

W przypadku każdego z tych warunków można zresetować identyfikator zestawu aplikacji dla określonego zestawu aplikacji zainstalowanych ze Sklepu Google Play na urządzeniu:

  • Od ponad 13 miesięcy grupy aplikacji o tej samej wartości identyfikatora nie mają dostępu do interfejsu API identyfikatora zestawu aplikacji.
  • Ostatnia aplikacja z danego zestawu aplikacji jest odinstalowana z urządzenia.
  • użytkownik przywróci ustawienia fabryczne urządzenia,

Aplikacja powinna używać pakietu SDK do pobierania wartości identyfikatora za każdym razem, gdy jest potrzebna.

Dodaj do aplikacji pakiet SDK identyfikatora zestawu aplikacji

Ten fragment kodu pokazuje przykładowy plik build.gradle, który korzysta z biblioteki identyfikatorów zestawu aplikacji:

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

Ten przykładowy fragment kodu pokazuje, jak asynchronicznie pobierać identyfikator zestawu aplikacji za pomocą interfejsu Tasks API w usługach Google Play:

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