Cómo migrar a la biblioteca de Google Play Billing 7 desde las versiones 5 o 6

En este documento, se describe cómo migrar de la Biblioteca de Facturación Google Play 5 o 6 a la Biblioteca de Facturación Google Play 7 y cómo integrarla con las nuevas funciones de suscripción opcionales.

Para obtener una lista completa de los cambios de la versión 7.0.0, consulta las notas de la versión.

Descripción general

La Biblioteca de Facturación Google Play 7 mejora el procesamiento de pagos para las funciones de suscripción existentes. Estas mejoras opcionales agregan compatibilidad con el pago con planes de cuotas y con las compras pendientes de suscripciones prepagadas.

Actualización retrocompatible de la biblioteca de Play Billing

Todas las APIs nuevas de la Biblioteca de Facturación Google Play 7 son opcionales, y los desarrolladores no necesitan implementar ningún cambio en la API para actualizarla.

Para migrar, debes actualizar las referencias de la API y quitar ciertas APIs de tu app, como se describe en las notas de la versión y, más adelante, en esta guía de migración.

Actualiza de PBL 5 a PBL 7

En las siguientes secciones, se describe cómo actualizar de PBL 5 a PBL 7.

Actualiza la Biblioteca de Facturación Google Play

Actualiza la versión de la dependencia de la Biblioteca de Facturación Play en el archivo build.gradle de tu app.

dependencies {
    def billingVersion = 7.0.0

    implementation "com.android.billingclient:billing:$billingVersion"
}

A continuación, actualiza tus referencias de la API como se describe en las siguientes secciones.

Cambia las compras de suscripción de un usuario

En la Biblioteca de Facturación Play 5 y versiones anteriores, se usaba ProrationMode para aplicar cambios en las compras de suscripción de un usuario, por ejemplo, actualizaciones o cambios a versiones anteriores. Esta API se quitó y se reemplazó por ReplacementMode.

Controla los cambios en el precio de las suscripciones

Se quitó la API de launchPriceConfirmationFlow que ya estaba obsoleta. Para conocer otras alternativas, consulta la guía de cambios de precios.

Controla los cambios en la API relacionados con las suscripciones

Se quitaron las APIs setOldSkuPurchaseToken, setReplaceProrationMode y setReplaceSkusProrationMode que habían dejado de estar disponibles.

Controla los errores de la biblioteca de Play Billing

Un nuevo código NETWORK_ERROR indica problemas con la conexión de red entre el dispositivo del usuario y el sistema de Google Play.

También se actualizaron los códigos SERVICE_TIMEOUT y SERVICE_UNAVAILABLE.

Para obtener más información, consulta Cómo administrar códigos de respuesta BillingResult.

Controla las transacciones pendientes

La biblioteca de Facturación Play ya no crea un ID de pedido para las compras pendientes. Para estas compras, el ID de pedido se propaga después de que la compra pasa al estado PURCHASED. Asegúrate de que tu integración espere un ID de pedido solo después de que se complete una transacción. Puedes seguir usando el token de compra para tus registros.

Si quieres obtener más información para controlar las compras pendientes, consulta la guía de integración de la biblioteca de Facturación Play y la guía de administración del ciclo de vida de las compras.

Controla las APIs de facturación alternativa que se quitaron

Se quitaron BillingClient.Builder.enableAlternativeBilling, AlternativeBillingListener y AlternativeChoiceDetails. En su lugar, usa BillingClient.Builder.enableUserChoiceBilling() con UserChoiceBillingListener y UserChoiceDetails en la devolución de llamada del objeto de escucha.

Esta actualización cambia el nombre de las APIs obsoletas sin cambios de comportamiento.

Cambios opcionales

La PBL 7 incluye dos APIs opcionales nuevas.

Admite compras pendientes para planes prepagados

Consulta la guía Cómo controlar las suscripciones y las transacciones pendientes.

Suscripciones con cuotas virtuales

Consulta la guía Integración de suscripciones en cuotas.

Actualiza de PBL 6 a PBL 7

En las siguientes secciones, se describe cómo actualizar de PBL 6 a PBL 7.

Actualiza la Biblioteca de Facturación Google Play

Actualiza la versión de la dependencia de la Biblioteca de Facturación Play en el archivo build.gradle de tu app.

dependencies {
    def billingVersion = 7.0.0

    implementation "com.android.billingclient:billing:$billingVersion"
}

A continuación, actualiza tus referencias de la API como se describe en las siguientes secciones.

Controla los cambios en la API relacionados con las suscripciones

Se quitaron las APIs setOldSkuPurchaseToken, setReplaceProrationMode y setReplaceSkusProrationMode que habían dejado de estar disponibles.

Controla las APIs de facturación alternativa que se quitaron

Se quitaron BillingClient.Builder.enableAlternativeBilling, AlternativeBillingListener y AlternativeChoiceDetails. En su lugar, usa BillingClient.Builder.enableUserChoiceBilling() con UserChoiceBillingListener y UserChoiceDetails en la devolución de llamada del objeto de escucha.

Cambios opcionales

La PBL 7 incluye dos APIs opcionales nuevas.

Admite compras pendientes para planes prepagados

Consulta la guía Cómo controlar las suscripciones y las transacciones pendientes.

Suscripciones con cuotas virtuales

Consulta la guía de integración de suscripciones en cuotas para obtener información sobre cómo integrar estos cambios en tu app.