Cómo integrar mensajes de instalación en la app

En esta guía, se describe cómo integrar mensajes de instalación integrados en tu app con Kotlin o Java.

Cómo configurar tu entorno de desarrollo

La biblioteca de Play In-App Install Prompts forma parte de las bibliotecas de Google Play Core. Para usar la biblioteca, incluye la siguiente dependencia de Gradle:

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")
    ...
}

Crea el CrossDevicePromptManager

El objeto CrossDevicePromptManager es la interfaz que permite que tu app solicite información y lance el flujo de mensajes de instalación. Crea una instancia para obtenerlo:

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);

Solicita un objeto CrossDevicePromptInstallationRequest

Determina el mejor momento en el flujo de tu app para solicitarle al usuario que la instale en otro dispositivo (por ejemplo, cuando transmite un video desde su teléfono a una TV). Cuando tu app alcance uno de estos puntos, sigue estos pasos:

  1. Crea un CrossDevicePromptInstallationRequest.
  2. Usa CrossDevicePromptManager para crear una tarea de solicitud que acepte la solicitud como parámetro.

Si la tarea se realiza correctamente, la API devuelve el objeto CrossDevicePromptInfo en la devolución de llamada de éxito. De lo contrario, la API devuelve un Exception en la devolución de llamada de error.

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
});

Para verificar tu implementación, consulta Cómo probar los mensajes de instalación en la aplicación.