इस पेज पर, अपने ऐप्लिकेशन में नेविगेशन मैप के साथ इंटरैक्ट करने के सबसे सही तरीकों के बारे में बताया गया है.
जहां भी हो सके, NavigationView
के बजाय SupportNavigationFragment
का इस्तेमाल करें
SupportNavigationFragment
, NavigationView
लाइफ़साइकल कॉलबैक को मैनेज करने के लिए एक रैपर है, ताकि आपको इन कॉलबैक को खुद मैनेज करने की ज़रूरत न पड़े. इस तरीके से, गड़बड़ियों की संभावना कम होती है. साथ ही, यह आपके ऐप्लिकेशन में नेविगेशन का इस्तेमाल करने का सबसे सही तरीका है. SupportNavigationFragment
का इस्तेमाल करते समय, पक्का करें कि आपने NavigationView
लाइफ़साइकल इवेंट को ट्रिगर न किया हो.
NavigationView
का इस्तेमाल करने पर, लाइफ़साइकल मेथड को लागू करते समय स्ट्रिक्ट ऑर्डर का इस्तेमाल करें
NavigationView
, नेविगेशन मैप को होस्ट करता है और Android ऐक्टिविटी और फ़्रैगमेंट के तौर पर लाइफ़साइकल इवेंट को बारीकी से ट्रैक करता है. साथ ही, लाइफ़साइकल इवेंट के ट्रिगर होने पर खास कार्रवाइयां करता है. NavigationView
, NavigationView#onCreate
और NavigationView#onStart
पर कई बार शुरू होने की प्रोसेस को लागू करता है. साथ ही, NavigationView#onStop
और NavigationView#onDestroy
पर क्लीनअप की प्रोसेस को भी लागू करता है. ऐसा तब भी होता है, जब लाइफ़साइकल के दूसरे इवेंट प्रोसेस किए जाते हैं.
NavigationView
लाइफ़साइकल के तरीकों का मतलब वही है जो Android ऐक्टिविटी या फ़्रैगमेंट के लिए होता है. उदाहरण के लिए, NavigationView
के onCreate()
का अनुवाद, Android ऐक्टिविटी या फ़्रैगमेंट के लाइफ़साइकल कॉलबैक से किया जाता है और उसे इन कॉलबैक से शुरू किया जाना चाहिए. NavigationView
लाइफ़साइकल कॉलबैक, Android लाइफ़साइकल कॉलबैक के आधार पर होते हैं और उसी क्रम में शुरू किए जाते हैं. इसलिए, इन NavigationView तरीकों को क्रम से लगाना ज़रूरी है. ऐसा न करने पर, आपको मेमोरी का रिसाव, यूज़र इंटरफ़ेस से जुड़ी गड़बड़ियां, जगह की जानकारी अपडेट न होना वगैरह जैसी समस्याएं हो सकती हैं.
Android ऐक्टिविटी के लाइफ़साइकल के बारे में ज़्यादा जानने के लिए, Android डेवलपर दस्तावेज़ में ऐक्टिविटी के लाइफ़साइकल के कॉन्सेप्ट सेक्शन देखें.
नीचे दी गई टेबल से पता चलता है कि लाइफ़साइकल के तय किए गए तरीकों के बाद, अन्य लाइफ़साइकल तरीकों को कब शुरू किया जाना चाहिए:
लाइफ़साइकल का तरीका | ऐक्टिविटी के लाइफ़साइकल में कहां शुरू किया जाता है | लाइफ़साइकल के किस तरीके के बाद शुरू किया जाता है |
---|---|---|
onConfigurationChanged()
|
यह तब ट्रिगर होता है, जब यूज़र इंटरफ़ेस (यूआई) फ़ोरग्राउंड में हो और कॉन्फ़िगरेशन में बदलाव हो. | हमेशा onStart() के बाद
|
onTrimMemory()
|
बैकग्राउंड में कोई गतिविधि होने पर ट्रिगर होता है. | हमेशा onPause() के बाद
|
onSaveInstance()
|
किसी गतिविधि को मिटाने से पहले ट्रिगर किया जाता है. | हमेशा onStop() के बाद
|
लाइफ़साइकल के इन तरीकों को कई बार कॉल न करें. ऐसा करने से पहले, उनसे जुड़े बंद करने के तरीके को कॉल करें. इसके अलावा, ध्यान रखें कि अगर इनमें से कुछ Android लाइफ़साइकल कॉलबैक को ऐप्लिकेशन खुद मैनेज करता है और NavigationView
को बनाने या शुरू करने के बाद फ़्रैगमेंट में जोड़ा जाता है, तो ऐप्लिकेशन को नेविगेशन SDK टूल को सही तरीके से शुरू करने के लिए, खास तरीकों को सही क्रम में खुद कॉल करना चाहिए.
इन तरीकों का इस्तेमाल करने के बारे में ज़्यादा जानकारी के लिए, नेविगेशन SDK टूल का डेमो ऐप्लिकेशन देखें.
NavigationView
का इस्तेमाल करने पर, गतिविधि या फ़्रैगमेंट, दोनों में से किसी एक से लाइफ़साइकल इवेंट ट्रिगर करें
लाइफ़साइकल मैथड के क्रम को सख्ती से बनाए रखने के लिए, इन इवेंट को गतिविधि या फ़्रैगमेंट लाइफ़साइकल कॉलबैक से शुरू करें. इन कॉलबैक को ये इवेंट क्रम से मिलते हैं. इस तरीके से यह पक्का किया जाता है कि ऐप्लिकेशन को फ़्रैगमेंट और गतिविधियों के बीच, कोऑर्डिनेट करने की ज़रूरत न पड़े और डुप्लीकेट कॉल न हों.