Esegui la migrazione alla versione 8 della Libreria Fatturazione Google Play dalle versioni 6 o 7

Questo documento descrive come eseguire la migrazione da Libreria Fatturazione Google Play (PBL) 6 o 7 a PBL 8 e come eseguire l'integrazione con le nuove funzionalità di abbonamento facoltative.

Per un elenco completo delle modifiche nella versione 8.0.0, consulta le note di rilascio.

Panoramica

PBL 8 contiene miglioramenti alle API esistenti e la rimozione delle API precedentemente deprecate. Questa versione della libreria include anche nuove API per i prodotti una tantum.

Compatibilità con le versioni precedenti per l'upgrade di PBL

Per eseguire la migrazione a PBL 8, devi aggiornare o rimuovere alcuni dei riferimenti API esistenti dalla tua app, come descritto nelle note di rilascio e più avanti in questa guida alla migrazione.

Esegui l'upgrade da PBL 6 o 7 a PBL 8

Per eseguire l'upgrade da PBL 6 o 7 a PBL 8, segui questi passaggi:

  1. Aggiorna la versione della dipendenza di Libreria Fatturazione Play nel file build.gradle della tua app.

    dependencies {
       def billingVersion = 8.0.0
       implementation "com.android.billingclient:billing:$billingVersion"
    }
    
  2. (Applicabile solo per l'upgrade da PBL 6 a PBL 8). Gestisci le modifiche alle API correlate agli abbonamenti nella tua app.

    La tabella seguente elenca le API correlate agli abbonamenti rimosse in PBL 8 e l'API alternativa corrispondente che devi utilizzare nella tua app.

    API precedentemente deprecata rimossa in PBL 8 API alternativa da utilizzare
    setOldSkuPurchaseToken setOldPurchaseToken
    setReplaceProrationMode setSubscriptionReplacementMode
    setReplaceSkusProrationMode setSubscriptionReplacementMode
  3. Aggiorna l'implementazione del queryProductDetailsAsync metodo.

    La firma del metodo ProductDetailsResponseListener.onProductDetailsResponse è stata modificata, il che richiede modifiche nella tua app per l'implementazione queryProductDetailsAsync. Per maggiori informazioni, consulta la sezione Mostrare i prodotti disponibili per l'acquisto.

  4. Gestisci le API rimosse.

    Esegui l'upgrade da

    PBL 8 non supporta più le API elencate nella tabella seguente. Se la tua implementazione utilizza una di queste API rimosse, consulta la tabella per le API alternative corrispondenti.

    API precedentemente deprecata rimossa in PBL 8 API alternativa da utilizzare
    API queryPurchaseHistoryAsync Consulta Eseguire query sulla cronologia degli acquisti
    querySkuDetailsAsync queryProductDetailsAsync
    enablePendingPurchases() (API senza parametri) enablePendingPurchases(PendingPurchaseParams params)
    Tieni presente che la funzione enablePendingPurchases() deprecata è funzionalmente equivalente a enablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build()).
    queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync
    BillingClient.Builder.enableAlternativeBilling BillingClient.Builder.enableUserChoiceBilling
    AlternativeBillingListener UserChoiceBillingListener
    AlternativeChoiceDetails UserChoiceDetails

    Esegui l'upgrade da

    La tabella seguente elenca le API rimosse in PBL 8 e le API alternative corrispondenti che devi utilizzare nella tua app.

    API precedentemente deprecata rimossa in PBL 8 API alternativa da utilizzare
    API queryPurchaseHistoryAsync Consulta Eseguire query sulla cronologia degli acquisti
    querySkuDetailsAsync queryProductDetailsAsync
    enablePendingPurchases() (API senza parametri) enablePendingPurchases(PendingPurchaseParams params)
    Tieni presente che la funzione enablePendingPurchases() deprecata è funzionalmente equivalente a enablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build()).
    queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync

  5. (Consigliato) Abilita la riconnessione automatica del servizio.

    Libreria Fatturazione Play può tentare di ristabilire automaticamente la connessione al servizio se viene effettuata una chiamata API mentre il servizio è disconnesso. Per maggiori informazioni, consulta la sezione Abilitare la riconnessione automatica del servizio.

  6. Modifiche facoltative.