Intégrer des invites d'installation dans l'application

Ce guide explique comment intégrer des invites d'installation dans votre application à l'aide de Kotlin ou de Java.

Configurer l'environnement de développement

La bibliothèque Play In-App Install Prompts fait partie des bibliothèques Google Play Core. Pour utiliser la bibliothèque, incluez la dépendance Gradle suivante :

Groovy

// In your app's build.gradle file:
...
dependencies {
    // This dependency is downloaded from the <a href="/studio/build/dependencies#google-maven">Google's Maven repository</a>.
    // So, make sure you also include that repository in your project's build.gradle file.
    implementation 'com.google.android.play:crossdeviceprompt:0.0.1-eap01'
    ...
}

Kotlin

// In your app's build.gradle.kts file:
...
dependencies {
    // This dependency is downloaded from the <a href="/studio/build/dependencies#google-maven">Google's Maven repository</a>.
    // So, make sure you also include that repository in your project's build.gradle file.
    implementation("com.google.android.play:crossdeviceprompt:0.0.1-eap01")
    ...
}

Créer le CrossDevicePromptManager

CrossDevicePromptManager est l'interface qui permet à votre application de demander des informations et de lancer le flux d'invite à l'installation. Créez une instance pour l'obtenir :

Kotlin

import com.google.android.play.core.crossdeviceprompt.CrossDevicePromptInfo
import com.google.android.play.core.crossdeviceprompt.CrossDevicePromptManager
import com.google.android.play.core.crossdeviceprompt.CrossDevicePromptManagerFactory
import com.google.android.play.core.crossdeviceprompt.model.CrossDevicePromptInstallationRequest

...

val crossDevicePromptManager: CrossDevicePromptManager =
    CrossDevicePromptManagerFactory.create(context)

Java

import com.google.android.play.core.crossdeviceprompt.CrossDevicePromptInfo;
import com.google.android.play.core.crossdeviceprompt.CrossDevicePromptManager;
import com.google.android.play.core.crossdeviceprompt.CrossDevicePromptManagerFactory;
import com.google.android.play.core.crossdeviceprompt.model.CrossDevicePromptInstallationRequest;

...

CrossDevicePromptManager crossDevicePromptManager =
    CrossDevicePromptManagerFactory.create(context);

Demander un objet CrossDevicePromptInstallationRequest

Déterminez le meilleur moment du parcours utilisateur dans votre application pour inviter l'utilisateur à installer votre application sur un autre appareil (par exemple, lorsqu'il diffuse une vidéo de son téléphone sur un téléviseur). Lorsque votre application atteint l'un de ces points, procédez comme suit :

  1. Créez un élément CrossDevicePromptInstallationRequest.
  2. Utilisez CrossDevicePromptManager pour créer une tâche de requête qui accepte la requête en tant que paramètre.

Si la tâche aboutit, l'API renvoie l'objet CrossDevicePromptInfo dans le rappel de réussite. Sinon, l'API renvoie un Exception dans le rappel d'échec.

Kotlin

val request: CrossDevicePromptInstallationRequest? =
    CrossDevicePromptInstallationRequest.create()
val result: Task<CrossDevicePromptInfo?> =
    crossDevicePromptManager.requestInstallationPromptFlow(request)

result.addOnSuccessListener { crossDevicePromptInfo ->
    // Requested a prompt flow successfully
}

result.addOnFailureListener { e ->
    // Failed to request a prompt flow
}

Java

CrossDevicePromptInstallationRequest request =
    CrossDevicePromptInstallationRequest.create();
Task<CrossDevicePromptInfo> result =
    crossDevicePromptManager.requestInstallationPromptFlow(request);

result.addOnSuccessListener(crossDevicePromptInfo -> {
    // Requested a prompt flow successfully
});

result.addOnFailureListener(e -> {
    // Failed to request a prompt flow
});

Pour vérifier votre implémentation, consultez Tester les invites d'installation dans l'application.