Questo documento descrive come eseguire la migrazione dalla versione 6 o 7 della libreria di fatturazione di Google Play (PBL) alla versione 8 e come eseguire l'integrazione con le nuove funzionalità facoltative per gli abbonamenti.

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 ritirate. Questa versione della libreria include anche nuove API per i prodotti una tantum.

Compatibilità con le versioni precedenti per l'upgrade PBL

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

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

Per eseguire l'upgrade da PBL 6 o 7 a PBL 8:

  1. Aggiorna la versione della dipendenza della Libreria Fatturazione Google 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 all'API relative agli abbonamenti nella tua app.

    Nella tabella seguente sono elencate le API relative agli abbonamenti rimosse in PBL 8 e l'API alternativa corrispondente che devi utilizzare nella tua app.

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

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

  4. Gestisci le API rimosse.

    Eseguire 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 trovare le API alternative corrispondenti.

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

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

  5. (Consigliato) Attiva il ricoinvolgimento automatico del servizio.

    La libreria Play Billing può tentare di ristabilire automaticamente la connessione al servizio se viene effettuata una chiamata API mentre il servizio è disconnesso. Per ulteriori informazioni, consulta Attivare il ricoinvolgimento automatico del servizio.

  6. Modifiche facoltative.