En este documento, se describe cómo migrar de la Biblioteca de Facturación Google Play (PBL) 6 o 7 a la PBL 8 y cómo realizar la integración con las nuevas funciones de suscripción opcionales.
Para obtener una lista completa de los cambios de la versión 8.0.0, consulta las notas de la versión.
Descripción general
La PBL 8 contiene mejoras en las APIs existentes, además de la eliminación de las APIs que ya no están disponibles. Esta versión de la biblioteca también incluye nuevas APIs para productos únicos.
Retrocompatibilidad para la actualización de la PBL
Para migrar a la PBL 8, debes actualizar o quitar algunas de las referencias de la API existentes 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 la PBL 6 o 7 a la PBL 8
Para actualizar de la PBL 6 o 7 a la PBL 8, sigue estos pasos:
Actualiza la versión de dependencia de la Biblioteca de Facturación Play en el archivo
build.gradlede tu app.dependencies { def billingVersion = 8.0.0 implementation "com.android.billingclient:billing:$billingVersion" }(Solo se aplica a la actualización de la PBL 6 a la PBL 8). Controla los cambios relacionados con la API de suscripción en tu app.
En la siguiente tabla, se enumeran las APIs relacionadas con la suscripción que se quitaron en la PBL 8 y la API alternativa correspondiente que debes usar en tu app.
API que ya no está disponible y se quitó en la PBL 8 API alternativa para usar setOldSkuPurchaseToken setOldPurchaseToken setReplaceProrationMode setSubscriptionReplacementMode setReplaceSkusProrationMode setSubscriptionReplacementMode Actualiza la implementación del
queryProductDetailsAsyncmétodo.Hay un cambio en la firma del
ProductDetailsResponseListener.onProductDetailsResponsemétodo, que requiere cambios en tu app para laqueryProductDetailsAsyncimplementación. Para obtener más información, consulta Mostrar productos disponibles para comprar.Controla las APIs quitadas.
Actualiza desde
La PBL 8 ya no admite las APIs que se enumeran en la siguiente tabla. Si tu implementación usa alguna de estas APIs quitadas, consulta la tabla para ver sus APIs alternativas correspondientes.
API que ya no está disponible y se quitó en la PBL 8 API alternativa para usar APIs de queryPurchaseHistoryAsync Consulta el historial de compras querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases() (API sin parámetros) enablePendingPurchases(PendingPurchaseParams params)
Ten en cuenta que la función enablePendingPurchases() que ya no está disponible es funcionalmente equivalente aenablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build()).queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync BillingClient.Builder.enableAlternativeBilling BillingClient.Builder.enableUserChoiceBilling AlternativeBillingListener UserChoiceBillingListener AlternativeChoiceDetails UserChoiceDetails Actualiza desde
En la siguiente tabla, se enumeran las APIs que se quitaron en la PBL 8 y las APIs alternativas correspondientes que debes usar en tu app.
API que ya no está disponible y se quitó en la PBL 8 API alternativa para usar APIs de queryPurchaseHistoryAsync Consulta el historial de compras querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases() (API sin parámetros) enablePendingPurchases(PendingPurchaseParams params)
Ten en cuenta que la función enablePendingPurchases() que ya no está disponible es funcionalmente equivalente aenablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build()).queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync (Recomendado) Habilita la reconexión automática del servicio.
La Biblioteca de Facturación Play puede intentar restablecer automáticamente la conexión de servicio si se realiza una llamada a la API mientras el servicio está desconectado. Para obtener más información, consulta Cómo habilitar la reconexión automática del servicio.
Cambios opcionales.
Admite compras pendientes para planes prepagos. Para obtener más información, consulta Cómo controlar suscripciones y transacciones pendientes.
Suscripciones de cuotas virtuales. Para obtener más información, consulta Integración de suscripciones de cuotas.