Migrar das versões 5 ou 6 para a Biblioteca Google Play Faturamento 7

Este documento descreve como migrar da Biblioteca Google Play Faturamento 5 ou 6 para a Biblioteca Google Play Faturamento 7 e como fazer a integração com os novos recursos opcionais de assinatura.

Para conferir uma lista completa das mudanças na versão 7.0.0, consulte as notas da versão.

Visão geral

A Biblioteca Google Play Faturamento 7 melhora o processamento de pagamentos para recursos de assinatura atuais. Essas melhorias opcionais adicionam suporte ao pagamento com planos de parcelamento e às compras pendentes de assinaturas pré-pagas.

Upgrade da Biblioteca Play Faturamento para ser compatível com versões anteriores

Todas as novas APIs da Biblioteca Google Play Faturamento 7 são opcionais, e os desenvolvedores não precisam implementar nenhuma mudança de API para atualizar.

Para migrar, é necessário atualizar as referências de API e remover certas APIs do app, conforme descrito nas notas da versão e mais adiante neste guia de migração.

Fazer upgrade da PBL 5 para a PBL 7

As seções a seguir descrevem como fazer upgrade do PBL 5 para o PBL 7.

Atualizar a Biblioteca Google Play Faturamento

Atualize a versão da dependência da Biblioteca Play Faturamento no arquivo build.gradle do app.

dependencies {
    def billingVersion = 7.0.0

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

Em seguida, atualize as referências da API conforme descrito nas seções a seguir.

Mudar as compras de assinaturas de um usuário

A Biblioteca Play Faturamento 5 e versões anteriores usavam o ProrationMode para aplicar mudanças às compras de assinaturas de um usuário, como upgrades ou downgrades. Essa API foi removida e substituída por ReplacementMode.

Processar mudanças no preço de assinaturas

A API launchPriceConfirmationFlow descontinuada foi removida. Para conferir alternativas, consulte o guia de mudanças de preço.

Processar mudanças na API relacionadas a assinaturas

As APIs setOldSkuPurchaseToken, setReplaceProrationMode e setReplaceSkusProrationMode, que foram descontinuadas, foram removidas.

Processar erros da Biblioteca Play Faturamento

Um novo código NETWORK_ERROR indica problemas com a conexão de rede entre o dispositivo do usuário e o sistema do Google Play.

Os códigos SERVICE_TIMEOUT e SERVICE_UNAVAILABLE também foram atualizados.

Para saber mais, consulte Processar códigos de resposta de BillingResult.

Processar transações pendentes

A Biblioteca Play Faturamento não cria mais um código do pedido para compras pendentes. Para essas compras, o código do pedido só é preenchido depois que a compra é movida para o estado PURCHASED. Confira se a integração espera um código de pedido somente após a conclusão de uma transação. Ainda é possível usar o token de compra para seus registros.

Para saber mais sobre como processar compras pendentes, consulte o guia de integração da Biblioteca Play Faturamento e o guia de gerenciamento do ciclo de vida de compras.

Processar APIs de faturamento alternativo removidas

BillingClient.Builder.enableAlternativeBilling, AlternativeBillingListener e AlternativeChoiceDetails foram removidos. Os desenvolvedores precisam usar BillingClient.Builder.enableUserChoiceBilling() com UserChoiceBillingListener e UserChoiceDetails no callback do listener.

Essa atualização é uma renomeação das APIs descontinuadas sem mudanças de comportamento.

Mudanças opcionais

O PBL 7 inclui duas novas APIs opcionais.

Suporte a compras pendentes para planos pré-pagos

Consulte o guia Processar assinaturas e transações pendentes.

Assinaturas de parcelas virtuais

Consulte o guia Integração de assinaturas em parcelas.

Fazer upgrade da PBL 6 para a PBL 7

As seções a seguir descrevem como fazer upgrade do PBL 6 para o PBL 7.

Atualizar a Biblioteca Google Play Faturamento

Atualize a versão da dependência da Biblioteca Play Faturamento no arquivo build.gradle do app.

dependencies {
    def billingVersion = 7.0.0

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

Em seguida, atualize as referências da API conforme descrito nas seções a seguir.

Processar mudanças na API relacionadas a assinaturas

As APIs setOldSkuPurchaseToken, setReplaceProrationMode e setReplaceSkusProrationMode, que foram descontinuadas, foram removidas.

Processar APIs de faturamento alternativo removidas

BillingClient.Builder.enableAlternativeBilling, AlternativeBillingListener e AlternativeChoiceDetails foram removidos. Os desenvolvedores precisam usar BillingClient.Builder.enableUserChoiceBilling() com UserChoiceBillingListener e UserChoiceDetails no callback do listener.

Mudanças opcionais

O PBL 7 inclui duas novas APIs opcionais.

Suporte a compras pendentes para planos pré-pagos

Consulte o guia Processar assinaturas e transações pendentes.

Assinaturas de parcelas virtuais

Consulte o guia Integração de assinaturas em parcelas para saber como integrar essas mudanças ao seu app.