Google Play Billing Library 6 या 7 से Google Play Billing Library 8 पर माइग्रेट करना

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

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

खास जानकारी

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

पीबीएल के नए वर्शन के साथ पुराने वर्शन के साथ काम करने की सुविधा

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

पीबीएल के वर्शन 6 या 7 से पीबीएल के वर्शन 8 पर अपग्रेड करना

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

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

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

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

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

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

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

    इससे अपग्रेड करना

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

    पीबीएल के वर्शन 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

    इससे अपग्रेड करना

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

    पीबीएल के वर्शन 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. ज़रूरी नहीं हैं.