Identifier les applications appartenant à un développeur

Pour les cas d'utilisation tels que l'analyse ou la prévention des fraudes sur un appareil donné, vous devrez peut-être mettre en corrélation l'utilisation ou les actions dans un ensemble d'applications appartenant à votre organisation. Les services Google Play proposent une option respectueuse de la confidentialité appelée ID du groupe d'applications.

Portée de l'ID du groupe d'applications

L'ID du groupe d'applications peut être associé à l'un des champs d'application définis ci-dessous. Pour déterminer le champ d'application auquel un ID particulier est associé, appelez getScope().

Champ d'application pour les développeurs Google Play

Pour les applications installées par le Google Play Store, l'API App Set ID renvoie un ID limité à l'ensemble d'applications publiées avec le même compte de développeur Google Play.

Par exemple, supposons que vous publiez deux applications via votre compte de développeur Google Play et que les deux applications soient installées sur le même appareil via le Google Play Store. Les applications partagent le même ID du groupe d'applications sur cet appareil. L'ID est le même même si les applications sont signées par des clés différentes.

Champ d'application de l'application

Dans l'une des conditions suivantes, le SDK de l'ID d'ensemble d'applications renvoie un ID propre à l'application appelante sur un appareil donné:

  • L'application est installée par un programme d'installation autre que le Google Play Store.
  • Les services Google Play ne peuvent pas déterminer le compte de développeur Google Play d'une application.
  • L'appli est installée sur un appareil ne disposant pas des services Google Play.

Ne pas se fier à la valeur mise en cache de l'ID du groupe d'applications

Dans l'une des conditions suivantes, l'ID du groupe d'applications d'un ensemble donné d'applications installées sur le Google Play Store sur un appareil peut être réinitialisé:

  • Les groupes d'applications partageant la même valeur d'ID n'ont pas accédé à l'API App Set ID depuis plus de 13 mois.
  • La dernière application d'un ensemble donné est désinstallée de l'appareil.
  • L'utilisateur rétablit la configuration d'usine de l'appareil.

Votre application doit utiliser le SDK pour récupérer la valeur de l'ID chaque fois que cela est nécessaire.

Ajouter le SDK de l'ID de groupe d'applications à votre application

L'extrait de code suivant montre un exemple de fichier build.gradle qui utilise la bibliothèque d'ID d'ensemble d'applications:

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

L'exemple d'extrait suivant montre comment récupérer l'ID du groupe d'applications de manière asynchrone à l'aide de l'API Tasks dans les services 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();
    }
});