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 özellikleriyle nasıl entegrasyon sağlanacağı açıklanmaktadır.
8.0.0 sürümündeki değişikliklerin tam listesi için [sürüm notlarına][1] bakın.
Android becerileri
GitHub'da gösterPlay Faturalandırma Kitaplığı'nı yükseltme
android skills add --skill play-billing-library-version-upgradeHelp me upgrade my Play Billing Library implementation.Genel Bakış
PBL 8, mevcut API'lerde iyileştirmeler içerir ve daha önce desteği sonlandırılan API'leri kaldırır. Kitaplığın bu sürümünde, tek seferlik ürünler için yeni API'ler de yer almaktadır.
PBL yükseltmesi için geriye dönük uyumluluk
Play Faturalandırma Kitaplığı 8'e geçmek için [sürüm notlarında][8] ve bu taşıma kılavuzunun 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 geçiş
PBL 6 veya 7'den PBL 8'e yükseltmek için aşağıdaki adımları uygulayın:
Uygulamanızın
build.gradledosyasındaki 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" }(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 [
queryProductDetailsAsync][9] yönteminin uygulamasını güncelleyin.[
ProductDetailsResponseListener.onProductDetailsResponse][2] yönteminin imzasında değişiklik yapıldı. Bu nedenle, [queryProductDetailsAsync][9] uygulamasında uygulamanızda değişiklik yapılması gerekiyor. Daha fazla bilgi için [Show products available to buy][3] başlıklı makaleyi inceleyin.Kaldırılan API'leri işleyin.
Şu
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 ilgili 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 Query Purchase History (Satın Alma İşlemi Geçmişine Sorgu Uygulama) başlıklı makaleyi inceleyin. querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases() (parametresiz API) enablePendingPurchases(PendingPurchaseParams params)
Desteği sonlandırılan enablePendingPurchases() işlevinin, işlevsel olarakenablePendingPurchases(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 Şu
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 desteği sonlandırılan API, PBL 8'de kaldırıldı Kullanılacak alternatif API queryPurchaseHistoryAsync API'leri Query Purchase History (Satın Alma İşlemi Geçmişine Sorgu Uygulama) başlıklı makaleyi inceleyin. querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases() (parametresiz API) enablePendingPurchases(PendingPurchaseParams params)
Desteği sonlandırılan enablePendingPurchases() işlevinin, işlevsel olarakenablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build())ile eşdeğer olduğunu unutmayın.queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync (Önerilir) Otomatik hizmet yeniden bağlantısını etkinleştirin.
Play Faturalandırma Kitaplığı, hizmet bağlantısı kesilmişken 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][6] başlıklı makaleyi inceleyin.
İsteğe bağlı değişiklikler.
Ön ödemeli planlar için bekleyen satın alma işlemlerini destekleyin. Daha fazla bilgi için [Abonelikleri ve Bekleyen İşlemleri Yönetme][4] başlıklı makaleyi inceleyin.
Sanal taksit abonelikleri Daha fazla bilgi için [Installment Subscriptions Integration][5] başlıklı makaleyi inceleyin.
[1]: /google/play/billing/release-notes [2]: /reference/com/android/billingclient/api/ProductDetailsResponseListener#onProductDetailsResponse(com.android.billingclient.api.BillingResult,java.util.List%3Ccom.android.billingclient.api.ProductDetails%3E) [3]: /google/play/billing/integrate#show-products [4]: /google/play/billing/subscriptions#pending [5]: /google/play/billing/subscriptions#installments [6]: /google/play/billing/integrate#automatic-service-reconnection [8]: /google/play/billing/release-notes [9]: /reference/com/android/billingclient/api/BillingClient#queryProductDetailsAsync