Ce guide explique comment intégrer des avis dans votre application à l'aide d'Unity. Il existe des guides d'intégration distincts si vous utilisez Kotlin ou Java, du code natif ou Unreal Engine.
Présentation du SDK Unity
L'API Google Play In-App Review fait partie de la famille du SDK Play Core. L'API pour
Unity propose une classe ReviewManager permettant de demander et de lancer le flux à l'aide
des méthodes RequestReviewFlow et LaunchReviewFlow. Une fois la
requête effectuée, votre application peut vérifier son état à l'aide de
ReviewErrorCode.
Configurer l'environnement de développement
OpenUPM-CLI
Si l'interface CLI OpenUPM est installée, vous pouvez installer le registre OpenUPM à l'aide de la commande suivante :
openupm add com.google.play.reviewOpenUPM
Ouvrez les paramètres du gestionnaire de paquets en sélectionnant l'option de menu Unity Edit > Project Settings > Package Manager (Modifier > Paramètres du projet > Gestionnaire de paquets).
Ajoutez OpenUPM en tant que registre ciblé dans la fenêtre du gestionnaire de paquets :
Name: package.openupm.com URL: https://package.openupm.com Scopes: com.google.external-dependency-manager com.google.play.common com.google.play.core com.google.play.reviewOuvrez le menu du gestionnaire de paquets en sélectionnant l'option de menu Unity Window > Package Manager (Fenêtre > Gestionnaire de paquets).
Définissez le menu déroulant de la portée du gestionnaire sur My Registries (Mes registres).
Sélectionnez le package Google Play Integrity plugin for Unity (Plug-in Google Play Integrity pour Unity) dans la liste des packages, puis appuyez sur Install (Installer).
Importer depuis GitHub
Téléchargez la dernière
.unitypackageversion depuis GitHub.Importez le fichier
.unitypackageen sélectionnant l'option de menu Unity Assets > Import package > Custom Package (Composants > Importer un package > Package personnalisé) et en important tous les éléments.
Créer le ReviewManager
Créez une instance de ReviewManager qui gère la communication entre
votre application et l'API Google Play.
using Google.Play.Review;
// Create instance of ReviewManager
private ReviewManager _reviewManager;
// ...
_reviewManager = new ReviewManager();
Demander un objet ReviewInfo
Suivez les conseils pour savoir quand demander un avis dans l'application afin de déterminer les bons
points du parcours de l'utilisateur dans votre application et de l'inviter à donner son avis (par exemple,
après qu'un utilisateur ferme l'écran récapitulatif à la fin d'un niveau dans un jeu). Lorsque
l'application se rapproche de l'un de ces points, utilisez l'instance ReviewManager
pour créer une opération asynchrone, comme illustré dans l'exemple suivant :
var requestFlowOperation = _reviewManager.RequestReviewFlow();
yield return requestFlowOperation;
if (requestFlowOperation.Error != ReviewErrorCode.NoError)
{
// Log error. For example, using requestFlowOperation.Error.ToString().
yield break;
}
_playReviewInfo = requestFlowOperation.GetResult();
Si l'appel aboutit, l'API renvoie l'objet PlayReviewInfo
dont votre application a besoin pour lancer le flux d'avis dans l'application. Dans cet exemple, l'appel
est effectué dans une coroutine
pour effectuer l'opération asynchrone (ce qui ne bloque pas le thread principal). Étant donné que l'appel est effectué de manière asynchrone, cela peut prendre quelques secondes. Par conséquent, l'application doit effectuer l'appel avant d'atteindre le point du parcours de l'utilisateur où vous souhaitez faire apparaître la demande d'avis dans l'application.
Lancer la procédure d'examen dans l'application
Une fois que votre application a reçu l'instance PlayReviewInfo, elle peut lancer la
procédure d'examen dans l'application. Notez que l'objet PlayReviewInfo n'est valide que pendant une durée limitée. Par conséquent, votre application ne doit pas attendre trop longtemps avant de lancer un flux.
var launchFlowOperation = _reviewManager.LaunchReviewFlow(_playReviewInfo);
yield return launchFlowOperation;
_playReviewInfo = null; // Reset the object
if (launchFlowOperation.Error != ReviewErrorCode.NoError)
{
// Log error. For example, using launchFlowOperation.Error.ToString().
yield break;
}
// The flow has finished. The API does not indicate whether the user
// reviewed or not, or even whether the review dialog was shown. Thus, no
// matter the result, we continue our app flow.
Étapes suivantes
Testez le flux d'avis dans votre application afin de vérifier que votre intégration fonctionne correctement.