इस दस्तावेज़ में, Google Play Billing Library (PBL) 6 या 7 से PBL 8 पर माइग्रेट करने का तरीका बताया गया है. साथ ही, सदस्यता की नई वैकल्पिक सुविधाओं के साथ इंटिग्रेट करने का तरीका भी बताया गया है.

8.0.0 वर्शन में हुए बदलावों की पूरी सूची के लिए, रिलीज़ नोट देखें.

खास जानकारी

PBL 8 में, मौजूदा एपीआई में सुधार किए गए हैं. साथ ही, पहले से इस्तेमाल नहीं किए जा रहे एपीआई को हटा दिया गया है. लाइब्रेरी के इस वर्शन में, एक बार खरीदे जाने वाले प्रॉडक्ट के लिए नए एपीआई भी शामिल हैं.

पीबीएल अपग्रेड के लिए, पुराने सिस्टम के साथ काम करने की सुविधा

PBL 8 पर माइग्रेट करने के लिए, आपको अपने ऐप्लिकेशन से कुछ मौजूदा एपीआई रेफ़रंस अपडेट करने होंगे या हटाने होंगे. इस बारे में रिलीज़ नोट में बताया गया है. इसके बाद, इस माइग्रेशन गाइड में भी इस बारे में बताया गया है.

PBL 6 या 7 से PBL 8 पर अपग्रेड करना

PBL 6 या 7 से PBL 8 पर अपग्रेड करने के लिए, यह तरीका अपनाएं:

  1. अपने ऐप्लिकेशन की build.gradle फ़ाइल में, Play Billing Library की डिपेंडेंसी का वर्शन अपडेट करें.

    dependencies {
      def billingVersion = 8.0.0
      implementation "com.android.billingclient:billing:$billingVersion"
    }
    
  2. (सिर्फ़ PBL 6 से PBL 8 पर अपग्रेड करने के लिए लागू). अपने ऐप्लिकेशन में, सदस्यता से जुड़े एपीआई में हुए बदलावों को मैनेज करना.

    इस टेबल में, सदस्यता से जुड़े उन एपीआई की सूची दी गई है जिन्हें PBL 8 में हटा दिया गया है. साथ ही, उनसे जुड़े वैकल्पिक एपीआई की जानकारी भी दी गई है जिनका इस्तेमाल आपको अपने ऐप्लिकेशन में करना होगा.

    पहले से काम न करने वाला API, PBL 8 में हटा दिया गया इस्तेमाल करने के लिए कोई अन्य एपीआई
    setOldSkuPurchaseToken setOldPurchaseToken
    setReplaceProrationMode setSubscriptionReplacementMode
    setReplaceSkusProrationMode setSubscriptionReplacementMode
  3. queryProductDetailsAsync तरीके को लागू करने की जानकारी अपडेट करें.

    ProductDetailsResponseListener.onProductDetailsResponse तरीके के हस्ताक्षर में बदलाव हुआ है. इसलिए, queryProductDetailsAsync को लागू करने के लिए, आपको अपने ऐप्लिकेशन में बदलाव करने होंगे. ज़्यादा जानकारी के लिए, खरीदने के लिए उपलब्ध प्रॉडक्ट दिखाना लेख पढ़ें.

  4. हटाए गए एपीआई को मैनेज करना.

    इससे अपग्रेड करें

    PBL 8 अब नीचे दी गई टेबल में दिए गए एपीआई के साथ काम नहीं करता. अगर आपके ऐप्लिकेशन में हटाए गए इनमें से किसी भी एपीआई का इस्तेमाल किया जाता है, तो टेबल में उनके विकल्प के तौर पर दिए गए एपीआई देखें.

    पहले से काम न करने वाला API, PBL 8 में हटा दिया गया इस्तेमाल करने के लिए कोई अन्य एपीआई
    queryPurchaseHistoryAsync APIs खरीदारी का इतिहास देखें
    querySkuDetailsAsync queryProductDetailsAsync
    enablePendingPurchases() (पैरामीटर के बिना एपीआई) 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

    इससे अपग्रेड करें

    यहां दी गई टेबल में, PBL 8 में हटाए गए एपीआई और उनसे जुड़े वैकल्पिक एपीआई की सूची दी गई है. आपको अपने ऐप्लिकेशन में इन वैकल्पिक एपीआई का इस्तेमाल करना होगा.

    पहले से काम न करने वाला API, PBL 8 में हटा दिया गया इस्तेमाल करने के लिए कोई अन्य एपीआई
    queryPurchaseHistoryAsync APIs खरीदारी का इतिहास देखें
    querySkuDetailsAsync queryProductDetailsAsync
    enablePendingPurchases() (पैरामीटर के बिना एपीआई) enablePendingPurchases(PendingPurchaseParams params)
    ध्यान दें कि बंद किए गए enablePendingPurchases() फ़ंक्शन की सुविधा, enablePendingPurchases(PendingPurchasesParams.newBuilder().enableOneTimeProducts().build()) के बराबर है.
    queryPurchasesAsync(String skuType, PurchasesResponseListener listener) queryPurchasesAsync

  5. (सुझाया गया) सेवा अपने-आप फिर से कनेक्ट होने की सुविधा चालू करें.

    अगर सेवा डिसकनेक्ट होने के दौरान एपीआई कॉल किया जाता है, तो Play Billing Library, सेवा के कनेक्शन को अपने-आप फिर से सेट करने की कोशिश कर सकती है. ज़्यादा जानकारी के लिए, सेवा अपने-आप फिर से कनेक्ट होने की सुविधा चालू करना लेख पढ़ें.

  6. ज़रूरी नहीं हैं.