नेटवर्क इंस्पेक्टर की मदद से नेटवर्क ट्रैफ़िक की जांच करें

नेटवर्क इंस्पेक्टर, एक टाइमलाइन पर रीयल-टाइम नेटवर्क गतिविधि दिखाता है. भेजा और पाया गया डेटा. Network Inspector से आपको यह पता लगाने में मदद मिलेगी कि कैसे और कब ऐप्लिकेशन, डेटा ट्रांसफ़र करता है और मौजूदा कोड को सही तरीके से ऑप्टिमाइज़ करता है.

नेटवर्क इंस्पेक्टर खोलने के लिए, यह तरीका अपनाएं:

  1. Android Studio के नेविगेशन बार में, व्यू > टूल Windows > चुनें ऐप्लिकेशन की जांच करना. ऐप्लिकेशन की जांच वाली विंडो के अपने-आप कनेक्ट होने पर ऐप्लिकेशन की किसी प्रोसेस पर जाने के लिए, टैब से नेटवर्क इंस्पेक्टर को चुनें.
    • अगर ऐप्लिकेशन की जांच विंडो, ऐप्लिकेशन की प्रोसेस से कनेक्ट नहीं होती है तो आपको मैन्युअल रूप से ऐप प्रोसेस चुननी होगी.
  2. वह डिवाइस और ऐप्लिकेशन प्रोसेस चुनें जिसकी जांच आपको करनी है ऐप्लिकेशन की जांच करने वाली विंडो.

नेटवर्क इंस्पेक्टर की खास जानकारी

नेटवर्क इंस्पेक्टर विंडो में सबसे ऊपर, इवेंट की टाइमलाइन देखी जा सकती है. टाइमलाइन का कोई हिस्सा चुनने और ट्रैफ़िक की जांच करने के लिए, उस पर क्लिक करके खींचें और छोड़ें.

नेटवर्क इंस्पेक्टर विंडो
पहली इमेज. नेटवर्क इंस्पेक्टर विंडो.

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

टाइमलाइन के नीचे मौजूद पैनल में, इनमें से किसी एक को चुनें निम्न टैब पर क्लिक करके नेटवर्क गतिविधि के बारे में अधिक जानकारी देख सकते हैं, समयावधि का चुनिंदा हिस्सा:

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

    थ्रेड व्यू में ऐप्लिकेशन थ्रेड के हिसाब से नेटवर्क अनुरोधों की जांच करें
    दूसरी इमेज. ऐप्लिकेशन थ्रेड की मदद से, नेटवर्क के अनुरोधों की जांच करें थ्रेड व्यू.
  • नियम व्यू: नियमों की मदद से यह जांच की जा सकती है कि सामना होने पर आपका ऐप्लिकेशन कैसे काम करता है अलग-अलग स्टेटस कोड, हेडर, और बॉडी वाले रिस्पॉन्स होते हैं. जब आप नया नियम चुनें, अपने नए नियम को नाम दें और जिसे Origin सब-सेक्शन में रोकना है. इस रिस्पॉन्स सब-सेक्शन में, आपके पास यह बताने का विकल्प होता है कि जवाब. उदाहरण के लिए, नियम को इस तरह सेट किया जा सकता है कि वह खास स्टेटस कोड में बदलाव करने के सुझाव देता है. इस हेडर नियम और मुख्य भाग के नियम सब-सेक्शन, ऐसे उप-नियम बनाएं जो जोड़कर या रिस्पॉन्स हेडर या बॉडी में बदलाव कर सकता है. नियम इसी क्रम में लागू होते हैं वे सूची में शामिल हैं. आप जिस नियम को चालू या बंद करना चाहते हैं उसे चालू बॉक्स.

    नेटवर्क इंस्पेक्टर के नियम और नियम की जानकारी वाला पैनल
    तीसरी इमेज. Network Inspector के नियम और नियम की जानकारी पैनल.

कनेक्शन व्यू या थ्रेड व्यू में से, किसी अनुरोध के नाम पर क्लिक करके भेजे या मिले डेटा के बारे में पूरी जानकारी की जांच करता है. टैब पर क्लिक करके जवाब का हेडर और मुख्य हिस्सा देखने के साथ ही, हेडर और मुख्य हिस्से या कॉल स्टैक का अनुरोध करें.

जवाब और अनुरोध टैब पर, पार्स किया गया देखें लिंक पर क्लिक करें फ़ॉर्मैट किया गया टेक्स्ट दिखाता है. रॉ टेक्स्ट दिखाने के लिए, सोर्स देखें लिंक पर क्लिक करें.

रॉ टेक्स्ट और फ़ॉर्मैट किए गए टेक्स्ट के बीच टॉगल करें
चौथी इमेज. इसके हिसाब से रॉ टेक्स्ट और फ़ॉर्मैट किए गए टेक्स्ट के बीच टॉगल करें उसके हिसाब से लिंक पर क्लिक करें.

इसके लिए नेटवर्क अनुरोधों को दिखाने के अलावा HttpsURLConnection, नेटवर्क इंस्पेक्टर में OkHttp का भी इस्तेमाल किया जा सकता है. कुछ तीसरे पक्ष की नेटवर्क लाइब्रेरी, जैसे Retrofit, OkHttp का इस्तेमाल करें ताकि Network Inspector आपको उनकी नेटवर्क गतिविधि की जांच करने की सुविधा देता हो. कॉन्टेंट बनाने अब Android में, सैंपल ऐप्लिकेशन नेटवर्क की कार्रवाइयों के लिए, OkHttp का इस्तेमाल करता है. इस प्लैटफ़ॉर्म पर इसे देखा जा सकता है कार्रवाई.

अगर आप HttpsURLConnection एपीआई, आपको अनुरोध टैब में सिर्फ़ वे हेडर दिखते हैं जिन्हें आपने यह setRequestProperty तरीका, जैसा कि नीचे दिए गए नमूने में दिखाया गया है:

Kotlin

val url = URL(MY_URL_EN)
val urlConnection: HttpsURLConnection = url.openConnection() as HttpsURLConnection
...
// Sets acceptable encodings in the request header.
urlConnection.setRequestProperty("Accept-Encoding", "identity")

Java

URL url = new URL(MY_URL_EN);
HttpsURLConnection urlConnection = (HttpsURLConnection) url.openConnection();
//...
// Sets acceptable encodings in the request header.
urlConnection.setRequestProperty("Accept-Encoding", "identity");

इंटरनेट की समस्या को हल करना

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

**Network Inspector Data Unavailable:** There is no information for the
  network traffic you've selected.

फ़िलहाल, नेटवर्क इंस्पेक्टर सिर्फ़ HttpsURLConnection और नेटवर्क के लिए OkHttp लाइब्रेरी कनेक्शन. अगर आपका ऐप्लिकेशन किसी दूसरी इंटरनेट लाइब्रेरी का इस्तेमाल करता है, तो शायद आप नेटवर्क इंस्पेक्टर में अपनी नेटवर्क गतिविधि देख पाएंगे. अगर आपके पास गड़बड़ी का यह मैसेज मिला है, लेकिन आपका ऐप्लिकेशन HttpsURLConnection का इस्तेमाल करता है या OkHttp, गड़बड़ी की शिकायत करें या समस्या खोजें ट्रैकर का इस्तेमाल करें. आपने लोगों तक पहुंचाया मुफ़्त में भी इन संसाधनों का इस्तेमाल करके, अतिरिक्त लाइब्रेरी के लिए मदद का अनुरोध किया जा सकता है.