Cómo probar las opiniones integradas en la app (Unity)

En esta guía, se describe cómo probar las opiniones integradas en la app con Unity. Hay guías de integración separadas que puedes usar con Kotlin o Java o el código nativo.

Descripción general del SDK de Unity

La API de In-App Review de Play forma parte de la familia del SDK de Play Core. La API de Unity ofrece una clase de ReviewManager para solicitar y, luego, iniciar el flujo con los métodos RequestReviewFlow y LaunchReviewFlow. Después de realizar una solicitud, tu app puede verificar el estado de la solicitud con ReviewErrorCode.

Cómo configurar tu entorno de desarrollo

OpenUPM-CLI

Si tienes instalada la CLI de OpenUPM, puedes instalar el registro de OpenUPM con el siguiente comando:

openupm add com.google.play.review

OpenUPM

  1. Para abrir la configuración del administrador de paquetes, selecciona la opción de menú de Unity Edit > Project Settings > Package Manager.

  2. Agrega OpenUPM como un registro con alcance a la ventana del Administrador de paquetes:

    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.review
    
  3. Para abrir el menú del administrador de paquetes, selecciona la opción de menú de Unity Window > Package Manager.

  4. Establece el menú desplegable de alcance del administrador para seleccionar Mis registros.

  5. Selecciona el paquete Google Play Integrity plugin for Unity de la lista de paquetes y presiona Install.

Importa desde GitHub

  1. Descarga la versión más reciente de .unitypackage desde GitHub.

  2. Importa el archivo .unitypackage. Para ello, selecciona la opción del menú de Unity Assets > Import package > Custom Package e importa todos los elementos.

Cómo crear el ReviewManager

Crea una instancia de ReviewManager que controle la comunicación entre tu app y la API.

// Create instance of ReviewManager
private ReviewManager _reviewManager;
// ...
_reviewManager = new ReviewManager();

Cómo solicitar un objeto ReviewInfo

Sigue las instrucciones sobre cuándo solicitar opiniones integradas en la app para determinar buenos puntos en el flujo de usuarios de tu app a fin de solicitarle al usuario que brinde una opinión (por ejemplo, después de que descarte la pantalla de resumen al final de un nivel en un juego). Cuando tu app se acerque a uno de estos puntos, usa la instancia del ReviewManager para crear una operación asíncrona, como se muestra en el siguiente ejemplo:

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 la llamada se ejecuta correctamente, la API muestra el objeto PlayReviewInfo que tu app necesita para iniciar el flujo de opiniones integradas en la app. En el ejemplo, la llamada se completa dentro de una corrutina para realizar la operación asíncrona (esto no bloquea el subproceso principal). Dado que la llamada se realiza de forma asíncrona, es posible que tarde unos segundos, por lo que tu app debería realizar la llamada antes de que la app alcance el punto en el flujo de usuarios en el que quieres mostrar las opiniones integradas en la app.

Cómo iniciar el flujo de opiniones integradas en la app

Una vez que tu app recibe la instancia PlayReviewInfo, puede iniciar el flujo de opiniones integradas en la app. Ten en cuenta que el objeto PlayReviewInfo solo es válido por un tiempo limitado, por lo que tu app no debería esperar demasiado tiempo antes de iniciar el flujo.

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.

Próximos pasos

Prueba el flujo de opiniones integradas en la app para verificar que la integración funcione correctamente.