Intégrer des avis dans l'application (Unity)

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, ou le code natif.

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 envoyée, votre application peut vérifier l'état de la requête à l'aide de ReviewErrorCode.

Configurer l'environnement de développement

Téléchargez la dernière version du plug-in Play In-App Review pour Unity depuis les packages Google pour Unity.

Créer le ReviewManager

Créez une instance ReviewManager qui gère la communication entre votre application et l'API.

// 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 points clés 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 (cela 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 pour une durée limitée. Par conséquent, l'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 requestFlowOperation.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 l'intégration fonctionne correctement.