6 veya 7 sürümlerinden Google Play Faturalandırma Kitaplığı 8'e geçiş yapma

Bu belgede, Google Play Faturalandırma Kitaplığı (PBL) 6 veya 7'den PBL 8'e nasıl geçiş yapılacağı ve yeni isteğe bağlı abonelik özelliklerinin nasıl entegre edileceği açıklanmaktadır.

8.0.0 sürümündeki değişikliklerin tam listesi için sürüm notlarına bakın.

Genel Bakış

PBL 8, mevcut API'lerde yapılan iyileştirmelerin yanı sıra daha önce desteği sonlandırılan API'lerin kaldırılmasını içerir. Kitaplığın bu sürümü, tek seferlik ürünler için yeni API'ler de içerir.

PBL yükseltmesi için geriye dönük uyumluluk

PBL 8'e geçmek için sürüm notlarında ve bu geçiş rehberinin ilerleyen bölümlerinde açıklandığı gibi, mevcut API referanslarınızdan bazılarını uygulamanızdan güncellemeniz veya kaldırmanız gerekir.

PBL 6 veya 7'den PBL 8'e yükseltme

PBL 6 veya 7'den PBL 8'e yükseltmek için aşağıdaki adımları uygulayın:

  1. Uygulamanızın build.gradle dosyasında Play Faturalandırma Kitaplığı bağımlılık sürümünü güncelleyin.

    dependencies {
       def billingVersion = 8.0.0
       implementation "com.android.billingclient:billing:$billingVersion"
    }
    
  2. (Yalnızca PBL 6'dan PBL 8'e yükseltme için geçerlidir). Uygulamanızda abonelikle ilgili API değişikliklerini yönetin.

    Aşağıdaki tabloda, PBL 8'de kaldırılan abonelikle ilgili API'ler ve uygulamanızda kullanmanız gereken alternatif API'ler listelenmiştir.

    Daha önce desteği sonlandırılan API, PBL 8'de kaldırıldı Kullanılacak alternatif API
    setOldSkuPurchaseToken setOldPurchaseToken
    setReplaceProrationMode setSubscriptionReplacementMode
    setReplaceSkusProrationMode setSubscriptionReplacementMode
  3. queryProductDetailsAsync yönteminin uygulamasını güncelleyin.

    ProductDetailsResponseListener.onProductDetailsResponse yönteminin imzasında bir değişiklik yapıldı. Bu nedenle, queryProductDetailsAsync uygulamasında değişiklik yapmanız gerekir. Daha fazla bilgi için Satın alınabilecek ürünleri gösterme başlıklı makaleyi inceleyin.

  4. Kaldırılan API'leri yönetin.

    Yükseltme kaynağı

    PBL 8, aşağıdaki tabloda listelenen API'leri artık desteklemiyor. Uygulamanızda bu kaldırılan API'lerden herhangi biri kullanılıyorsa alternatif API'ler için tabloya bakın.

    Daha önce desteği sonlandırılan API, PBL 8'de kaldırıldı Kullanılacak alternatif API
    queryPurchaseHistoryAsync API'leri İşlem Geçmişini Sorgula bölümüne bakın.
    querySkuDetailsAsync queryProductDetailsAsync
    enablePendingPurchases() (parametresiz API) enablePendingPurchases(PendingPurchaseParams params)
    Desteği sonlandırılan enablePendingPurchases() işlevinin, işlevsel olarak enablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build()) ile eşdeğer olduğunu unutmayın.
    queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync
    BillingClient.Builder.enableAlternativeBilling BillingClient.Builder.enableUserChoiceBilling
    AlternativeBillingListener UserChoiceBillingListener
    AlternativeChoiceDetails UserChoiceDetails

    Yükseltme kaynağı

    Aşağıdaki tabloda, PBL 8'de kaldırılan API'ler ve uygulamanızda kullanmanız gereken alternatif API'ler listelenmiştir.

    Daha önce desteği sonlandırılan API, PBL 8'de kaldırıldı Kullanılacak alternatif API
    queryPurchaseHistoryAsync API'leri İşlem Geçmişini Sorgula bölümüne bakın.
    querySkuDetailsAsync queryProductDetailsAsync
    enablePendingPurchases() (parametresiz API) enablePendingPurchases(PendingPurchaseParams params)
    Desteği sonlandırılan enablePendingPurchases() işlevinin, işlevsel olarak enablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build()) ile eşdeğer olduğunu unutmayın.
    queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync

  5. (Önerilir) Otomatik hizmet yeniden bağlantısını etkinleştirin.

    Play Faturalandırma Kitaplığı, hizmet bağlantısı kesikken bir API çağrısı yapılırsa hizmet bağlantısını otomatik olarak yeniden kurmaya çalışabilir. Daha fazla bilgi için Otomatik hizmet yeniden bağlantısını etkinleştirme başlıklı makaleyi inceleyin.

  6. İsteğe bağlı değişiklikler.