Intégrer des avis dans l'application (Unreal Engine)

Ce guide explique comment intégrer des avis dans votre application à l'aide d'Unreal Engine. Il existe des guides d'intégration distincts si vous utilisez Kotlin ou Java, le code natif ou Unity.

Présentation du SDK Unreal Engine

L'API Play In-App Reviews fait partie de la famille du SDK Play Core. L'API pour Unreal Engine propose une classe UInAppReviewsManager 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 EInAppReviewErrorCode.

Versions d'Unreal Engine compatibles

Le plug-in est compatible avec Unreal Engine 5.0 et toutes les versions ultérieures.

Configurer l'environnement de développement

Configuration

  1. Téléchargez le plug-in Play Unreal Engine à partir du dépôt GitHub.

  2. Copiez le dossier GooglePlay dans le dossier Plugins de votre projet Unreal Engine.

  3. Ouvrez votre projet Unreal Engine, puis cliquez sur Edit → Plugins (Modifier → Plugins).

  4. Recherchez Google Play, puis cochez la case Activé.

  5. Redémarrez le projet de jeu et déclenchez une compilation.

  6. Ouvrez le fichier Build.cs de votre projet et ajoutez le module PlayInAppReviews à PublicDependencyModuleNames:

    using UnrealBuildTool;
    
    public class MyGame : ModuleRules
    {
      public MyGame(ReadOnlyTargetRules Target) : base(Target)
      {
        // ...
    
        PublicDependencyModuleNames.Add("PlayInAppReviews");
    
        // ...
      }
    }
    

Flux de demande d'avis dans l'application

Suivez les conseils pour savoir quand demander un avis dans l'application afin de déterminer les points clés du parcours utilisateur dans votre application et inviter l'utilisateur à donner son avis (par exemple, lorsqu'il ferme l'écran récapitulatif à la fin d'un niveau dans un jeu). Lorsque votre application se rapproche de l'un de ces points, utilisez UInAppReviewsManager pour créer une opération, comme illustré dans l'exemple suivant:

MyClass.h

void MyClass::OnReviewOperationCompleted(EInAppReviewErrorCode ErrorCode)
{
  // ...
}

MyClass.cpp

void MyClass::RequestReviewFlow()
{
  // Create a delegate to bind the callback function.
  FReviewOperationCompletedDelegate Delegate;

  // Bind the completion handler (OnReviewOperationCompleted) to the delegate.
  Delegate.BindDynamic(this, &MyClass::OnReviewOperationCompleted);

  // Initiate the review flow, passing the delegate to handle the result.
  GetGameInstance()
    ->GetSubsystem<UInAppReviewsManager>()
    ->RequestReviewFlow(Delegate);
}
  1. La méthode crée un FRreviewOperationCompletedDelegate pour gérer l'achèvement de l'opération d'examen.

  2. Le délégué est lié à la méthode OnReviewOperationCompleted, qui sera appelée une fois l'opération terminée.

  3. La fonction BindDynamic garantit que le délégué est correctement associé au rappel.

  4. La méthode RequestReviewFlow(Delegate) lance le processus d'examen, en transmettant le délégué pour gérer le résultat.

  5. L'opération d'examen s'exécute de manière asynchrone, ce qui permet aux autres tâches de l'application de se poursuivre pendant son exécution.

  6. Une fois l'opération terminée, le rappel OnReviewOperationCompleted traite le résultat, y compris la réussite ou l'échec.

Lancer la procédure d'examen dans l'application

Une fois l'opération RequestReviewFlow terminée, vous pouvez lancer la procédure d'examen dans l'application. Pour ce faire, vous devez lier un délégué pour gérer l'événement de fin, ce qui garantit que l'application réagit au résultat (succès ou échec) de la requête d'examen.

MyClass.h

void MyClass::OnReviewOperationCompleted(EInAppReviewErrorCode ErrorCode)
{
  // ...
}

MyClass.cpp

void MyClass::LaunchReviewFlow()
{
  // Create a delegate to bind the callback function.
  FReviewOperationCompletedDelegate Delegate;

  // Bind the completion handler (OnReviewOperationCompleted) to the delegate.
  Delegate.BindDynamic(this, &MyClass::OnReviewOperationCompleted);

  // Launch the review flow, passing the delegate to handle the result.
  GetGameInstance()
    ->GetSubsystem<UInAppReviewsManager>()
    ->LaunchReviewFlow(Delegate);
}

Étapes suivantes

Testez le flux d'examen dans l'application de votre application pour vérifier que votre intégration fonctionne correctement.