این سند نحوه انتقال از کتابخانه صورتحساب Google Play (PBL) 6 یا 7 به PBL 8 و نحوه ادغام با قابلیتهای اشتراک اختیاری جدید را شرح میدهد.
برای لیست کامل تغییرات در نسخه 8.0.0، به یادداشت های انتشار مراجعه کنید.
نمای کلی
PBL 8 شامل بهبودهایی در APIهای موجود همراه با حذف APIهای منسوخ شده قبلی است. این نسخه از کتابخانه همچنین شامل APIهای جدید برای محصولات یکبار مصرف است.
سازگاری با عقب برای ارتقاء PBL
برای انتقال به PBL 8، باید برخی از مراجع API موجود خود را از برنامه خود بهروزرسانی یا حذف کنید، همانطور که در یادداشتهای انتشار و بعداً در این راهنمای مهاجرت توضیح داده شده است.
از PBL 6 یا 7 به PBL 8 ارتقا دهید
برای ارتقاء از PBL 6 یا 7 به PBL 8، مراحل زیر را انجام دهید:
نسخه وابستگی کتابخانه صورتحساب Play را در فایل
build.gradle
برنامه خود بهروزرسانی کنید.dependencies { def billingVersion = 8.0.0 implementation "com.android.billingclient:billing:$billingVersion" }
(فقط برای ارتقا از PBL 6 به PBL 8 قابل استفاده است). تغییرات API مربوط به اشتراک را در برنامه خود مدیریت کنید.
جدول زیر API های مربوط به اشتراک را که در PBL 8 حذف شده اند و API جایگزین مربوطه که باید در برنامه خود استفاده کنید فهرست می کند.
API منسوخ شده قبلی در PBL 8 حذف شد API جایگزین برای استفاده setOldSkuPurchaseToken setOldPurchaseToken setReplaceProrationMode setSubscriptionReplacementMode setReplaceSkusProrationMode setSubscriptionReplacementMode اجرای روش
queryProductDetailsAsync
به روز کنید.تغییری در امضای روش
ProductDetailsResponseListener.onProductDetailsResponse
وجود دارد که به تغییراتی در برنامه شما برای اجرایqueryProductDetailsAsync
نیاز دارد. برای اطلاعات بیشتر، به نمایش محصولات موجود برای خرید مراجعه کنید.API های حذف شده را مدیریت کنید.
ارتقاء از
PBL 8 دیگر از API های فهرست شده در جدول زیر پشتیبانی نمی کند. اگر پیاده سازی شما از هر یک از این API های حذف شده استفاده می کند، به جدول مربوط به API های جایگزین مربوطه آنها مراجعه کنید.
API منسوخ شده قبلی در PBL 8 حذف شد API جایگزین برای استفاده queryPurchaseHistoryAsync API تاریخچه خرید پرس و جو را ببینید querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases() (API بدون پارامتر) enablePendingPurchases (PendingPurchaseParams params)
توجه داشته باشید که ()enablePendingPurchases منسوخ شده از نظر عملکردی معادلenablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build())
.queryPurchasesAsync(String skuType، PurchasesResponseListener شنونده) queryPurchasesAsync BillingClient.Builder.enableAlternativeBilling BillingClient.Builder.enableUserChoiceBilling AlternativeBillingListener UserChoiceBillingListener AlternativeChoiceDetails UserChoiceDetails ارتقاء از
جدول زیر API هایی را که در PBL 8 حذف شده اند و API های جایگزین مربوطه را که باید در برنامه خود استفاده کنید فهرست می کند.
API منسوخ شده قبلی در PBL 8 حذف شد API جایگزین برای استفاده queryPurchaseHistoryAsync API تاریخچه خرید پرس و جو را ببینید querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases() (API بدون پارامتر) enablePendingPurchases (PendingPurchaseParams params)
توجه داشته باشید که ()enablePendingPurchases منسوخ شده از نظر عملکردی معادلenablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build())
.queryPurchasesAsync(String skuType، PurchasesResponseListener شنونده) queryPurchasesAsync (توصیه می شود) اتصال مجدد سرویس خودکار را فعال کنید.
کتابخانه صورتحساب Play میتواند تلاش کند بهطور خودکار اتصال سرویس را مجدداً برقرار کند، اگر در حین قطع شدن سرویس، تماس API برقرار شود. برای اطلاعات بیشتر، به فعال کردن اتصال مجدد سرویس خودکار مراجعه کنید.
تغییرات اختیاری
از خریدهای معلق برای طرح های پیش پرداخت پشتیبانی کنید. برای اطلاعات بیشتر، به رسیدگی به اشتراکها و معاملات معلق مراجعه کنید.
اشتراک اقساط مجازی برای اطلاعات بیشتر، ادغام اشتراک های اقساطی را ببینید.