במאמר הזה מוסבר איך לעבור מספריית החיובים ב-Google Play (PBL) בגרסה 6 או 7 לגרסה 8, ואיך לשלב את יכולות המינויים האופציונליות החדשות.
רשימת השינויים המלאה בגרסה 8.0.0 מפורטת בנתוני הגרסה.
מיומנויות ב-Android
הצגת הקוד ב-GitHubשדרוג ספריית החיובים ב-Play
android skills add play-billing-library-version-upgradeHelp me upgrade my Play Billing Library implementation.סקירה כללית
גרסה 8 של PBL כוללת שיפורים בממשקי 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 חלופי לשימוש ממשקי API של queryPurchaseHistoryAsync לשאילתה על היסטוריית הרכישות querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases() (API ללא פרמטרים) enablePendingPurchases(PendingPurchaseParams params)
שימו לב שהפונקציה enablePendingPurchases() שהוצאה משימוש שוות ערך מבחינה פונקציונלית ל-enablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build()).queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync BillingClient.Builder.enableAlternativeBilling BillingClient.Builder.enableUserChoiceBilling AlternativeBillingListener UserChoiceBillingListener AlternativeChoiceDetails UserChoiceDetails שדרוג מ-
בטבלה הבאה מפורטים ממשקי ה-API שהוסרו ב-PBL 8, וממשקי ה-API החלופיים שצריך להשתמש בהם באפליקציה.
API שהוצא משימוש בעבר הוסר ב-PBL 8 API חלופי לשימוש ממשקי API של queryPurchaseHistoryAsync לשאילתה על היסטוריית הרכישות querySkuDetailsAsync queryProductDetailsAsync enablePendingPurchases() (API ללא פרמטרים) enablePendingPurchases(PendingPurchaseParams params)
שימו לב שהפונקציה enablePendingPurchases() שהוצאה משימוש שוות ערך מבחינה פונקציונלית ל-enablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build()).queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync (מומלץ) להפעיל חיבור מחדש אוטומטי לשירות.
אם מתבצעת קריאה ל-API כשהשירות מנותק, ספריית החיובים ב-Play יכולה לנסות ליצור מחדש את החיבור לשירות באופן אוטומטי. איך מפעילים את החיבור מחדש האוטומטי לשירות
שינויים אופציונליים.
תמיכה ברכישות ממתינות לתוכניות בתשלום מראש. מידע נוסף זמין במאמר טיפול במינויים ובעסקאות בהמתנה.
מינויים בתשלומים וירטואליים. מידע נוסף זמין במאמר שילוב מינויים בתשלומים.