Bu dokümanda, 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 özellikleriyle 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, daha önce kullanımdan kaldırılan API'lerin kaldırılmasının yanı sıra mevcut API'lerde yapılan iyileştirmeleri 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 taşıma rehberinin ilerleyen bölümlerinde açıklandığı gibi, mevcut API referanslarınızın bazılarını güncellemeniz veya uygulamanızdan kaldırmanız gerekir.

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

PBL 6 veya 7'den PBL 8'e geçmek 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 ilgili alternatif API listelenmiştir.

    Daha önce kullanımdan kaldırılmış API, PBL 8'de kaldırıldı Kullanılacak alternatif API
    setOldSkuPurchaseToken setOldPurchaseToken
    setReplaceProrationMode setSubscriptionReplacementMode
    setReplaceSkusProrationMode setSubscriptionReplacementMode
  3. queryProductDetailsAsync yönteminin uygulanmasını güncelleyin.

    ProductDetailsResponseListener.onProductDetailsResponse yönteminin imzasında bir değişiklik var. Bu değişiklik, queryProductDetailsAsync uygulaması için uygulamanızda değişiklik yapılmasını gerektiriyor. 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.

    sürümünden yükseltme

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

    Daha önce kullanımdan kaldırılmış API, PBL 8'de kaldırıldı Kullanılacak alternatif API
    queryPurchaseHistoryAsync API'leri Satın alma geçmişini sorgulayın başlıklı makaleyi inceleyin.
    querySkuDetailsAsync queryProductDetailsAsync
    enablePendingPurchases() (parametre içermeyen 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

    sürümünden yükseltme

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

    Daha önce kullanımdan kaldırılmış API, PBL 8'de kaldırıldı Kullanılacak alternatif API
    queryPurchaseHistoryAsync API'leri Satın alma geçmişini sorgulayın başlıklı makaleyi inceleyin.
    querySkuDetailsAsync queryProductDetailsAsync
    enablePendingPurchases() (parametre içermeyen 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ığı, hizmetin bağlantısı kesilirken bir API çağrısı yapılırsa hizmet bağlantısını otomatik olarak yeniden kurmayı deneyebilir. 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.