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.
Habilidades de Android
Ver en GitHubActualiza la Biblioteca de Facturación Play
android skills add play-billing-library-version-upgradeHelp me upgrade my Play Billing Library implementation.Descripción general
La PBL 8 contiene mejoras en las APIs existentes, junto con la eliminación de las APIs obsoletas. 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 PBL 6 o 7 a PBL 8, sigue estos pasos:
Actualiza la versión de la 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 PBL 6 a PBL 8). Controla los cambios de la API relacionados con las suscripciones en tu app.
En la siguiente tabla, se enumeran las APIs relacionadas con las suscripciones que se quitaron en PBL 8 y la API alternativa correspondiente que debes usar en tu app.
Se quitó la API que ya estaba obsoleta en la PBL 8 API alternativa que se usará setOldSkuPurchaseToken setOldPurchaseToken setReplaceProrationMode setSubscriptionReplacementMode setReplaceSkusProrationMode setSubscriptionReplacementMode Actualiza la implementación del método
queryProductDetailsAsync.Se modificó la firma del método
ProductDetailsResponseListener.onProductDetailsResponse, lo que requiere cambios en tu app para la implementación dequeryProductDetailsAsync. Para obtener más información, consulta Cómo mostrar productos disponibles para comprar.Controla las APIs quitadas.
Actualizar desde
PBL 8 ya no admite las APIs que se indican en la siguiente tabla. Si tu implementación usa alguna de estas APIs quitadas, consulta la tabla para conocer las APIs alternativas correspondientes.
Se quitó la API que ya estaba obsoleta en la PBL 8 API alternativa que se usará APIs de queryPurchaseHistoryAsync Consulta Cómo consultar el historial de compras. querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases() (API sin parámetros) enablePendingPurchases(PendingPurchaseParams params)
Ten en cuenta que el método enablePendingPurchases() obsoleto es funcionalmente equivalente aenablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build()).queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync BillingClient.Builder.enableAlternativeBilling BillingClient.Builder.enableUserChoiceBilling AlternativeBillingListener UserChoiceBillingListener AlternativeChoiceDetails UserChoiceDetails Actualizar 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.
Se quitó la API que ya estaba obsoleta en la PBL 8 API alternativa que se usará APIs de queryPurchaseHistoryAsync Consulta Cómo consultar el historial de compras. querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases() (API sin parámetros) enablePendingPurchases(PendingPurchaseParams params)
Ten en cuenta que el método obsoleto enablePendingPurchases() es funcionalmente equivalente aenablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build()).queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync Habilita la reconexión automática del servicio (recomendado).
La Biblioteca de Facturación Play puede intentar restablecer automáticamente la conexión del servicio si se realiza una llamada a la API mientras el servicio está desconectado. Para obtener más información, consulta Habilita la reconexión automática del servicio.
Cambios opcionales.
Admite compras pendientes para planes prepagados. Para obtener más información, consulta Cómo administrar suscripciones y transacciones pendientes.
Suscripciones con cuotas virtuales Para obtener más información, consulta Integración de suscripciones en cuotas.