Cronet अनुरोध का लाइफ़साइकल

Cronet का इस्तेमाल करके बनाए गए अनुरोधों के लाइफ़साइकल के बारे में जानें. साथ ही, लाइब्रेरी की ओर से उपलब्ध कराए गए कॉलबैक तरीकों का इस्तेमाल करके, उन्हें मैनेज करने का तरीका जानें.

लाइफ़साइकल की खास जानकारी

Cronet Library का इस्तेमाल करके बनाए गए नेटवर्क अनुरोधों को UrlRequest क्लास से दिखाया जाता है. UrlRequest के लाइफ़साइकल को समझने के लिए, इन कॉन्सेप्ट को समझना ज़रूरी है:

राज्य
स्टेट, किसी खास समय पर अनुरोध की स्थिति होती है. Cronet लाइब्रेरी का इस्तेमाल करके बनाए गए UrlRequest ऑब्जेक्ट, अपनी लाइफ़साइकल में अलग-अलग स्थितियों से गुज़रते हैं. अनुरोध के लाइफ़साइकल में, शुरुआती स्थिति के साथ-साथ कई ट्रांज़िशनल और फ़ाइनल स्थितियां शामिल होती हैं.
UrlRequest तरीके
क्लाइंट, स्थिति के आधार पर UrlRequest ऑब्जेक्ट पर खास तरीकों को कॉल कर सकते हैं. इन तरीकों से, अनुरोध को एक स्थिति से दूसरी स्थिति में ले जाया जाता है.
Callback तरीके
UrlRequest.Callback क्लास के तरीकों को लागू करके, आपका ऐप्लिकेशन अनुरोध की प्रोग्रेस के बारे में अपडेट पा सकता है. UrlRequest ऑब्जेक्ट के उन तरीकों को कॉल करने के लिए, कॉलबैक मैथड लागू किए जा सकते हैं जो लाइफ़साइकल को एक स्थिति से दूसरी स्थिति में ले जाते हैं.

यहां दी गई सूची में, UrlRequest के लाइफ़साइकल के बारे में बताया गया है:

  1. आपके ऐप्लिकेशन के start() तरीके को कॉल करने के बाद, लाइफ़साइकल Started स्थिति में होता है.
  2. सर्वर, रीडायरेक्ट करने का जवाब भेज सकता है. इससे फ़्लो, onRedirectReceived() तरीके पर चला जाता है. इस तरीके में, क्लाइंट इनमें से कोई एक कार्रवाई कर सकता है:
    • followRedirect() का इस्तेमाल करके, रीडायरेक्ट किए गए पेज पर जाएं. इस तरीके से, अनुरोध को वापस शुरू किया गया स्थिति में ले जाया जाता है.
    • cancel() का इस्तेमाल करके, अनुरोध रद्द करें. इस तरीके से अनुरोध को onCanceled() तरीके पर ले जाया जाता है. यहां ऐप्लिकेशन, अनुरोध को रद्द किया गया फ़ाइनल स्थिति में ले जाने से पहले, कुछ और कार्रवाइयां कर सकता है.
  3. जब ऐप्लिकेशन सभी रीडायरेक्ट को फ़ॉलो कर लेता है, तब सर्वर रिस्पॉन्स हेडर भेजता है और onResponseStarted() तरीके को कॉल किया जाता है. अनुरोध, read() का इंतज़ार किया जा रहा है स्थिति में है. ऐप्लिकेशन को read() तरीके को कॉल करना चाहिए, ताकि जवाब के मुख्य हिस्से को पढ़ा जा सके. read() को कॉल करने के बाद, अनुरोध Reading स्थिति में होता है. इसमें ये नतीजे मिल सकते हैं:
    • रीडिंग की कार्रवाई पूरी हो गई है, लेकिन ज़्यादा डेटा उपलब्ध है. onReadCompleted() को कॉल किया जाता है और अनुरोध फिर से read() के लिए इंतज़ार कर रहा है स्थिति में होता है. जवाब के मुख्य हिस्से को पढ़ना जारी रखने के लिए, ऐप्लिकेशन को read() तरीके को फिर से कॉल करना चाहिए. ऐप्लिकेशन, cancel() तरीके का इस्तेमाल करके भी अनुरोध को पढ़ना बंद कर सकता है .
    • रीडिंग ऐक्शन पूरा हो गया है और अब कोई डेटा उपलब्ध नहीं है. onSucceeded() तरीके को कॉल किया जाता है और अनुरोध अब Succeeded फ़ाइनल स्थिति में है.
    • पढ़ने की कार्रवाई पूरी नहीं की जा सकी. onFailed तरीके को कॉल किया जाता है और अनुरोध की आखिरी स्थिति अब Failed है.

इस डायग्राम में, UrlRequest ऑब्जेक्ट का लाइफ़साइकल दिखाया गया है:

Cronet अनुरोध के लाइफ़साइकल का डायग्राम
Cronet अनुरोध का लाइफ़साइकल

लेजेंड
Cronet की शुरुआती स्थिति के लेजेंड का आइकॉन शुरुआती स्थिति Cronet के फ़ाइनल स्टेटस का लेजेंड आइकॉन आखिरी स्थिति
Cronet की ट्रांज़िशनल स्थिति के लेजेंड का आइकॉन ट्रांज़िशनल स्टेट Cronet के कॉलबैक के तरीकों के लेजेंड का आइकॉन कॉलबैक के तरीके
Cronet क्लाइंट ऐक्शन लेजेंड आइकॉन UrlRequest तरीके