गतिविधि और टुकड़े के बीच अंतर क्या हैं?


80

मेरे शोध के अनुसार, बैकस्टैक की अवधारणा में महत्वपूर्ण अंतर है और वे कैसे मौजूद हैं:

गतिविधि

  • जब एक activityकरने के लिए रखा गया है backstackके activitiesउपयोगकर्ता सिर्फ दबाकर वापस पिछली गतिविधि पर नेविगेट कर सकते हैं back बटन।

  • Activity स्वतंत्र रूप से मौजूद हो सकता है।

टुकड़ा

  • जब एक fragmentगतिविधि के लिए रखा जाता है तो हमें कॉल के addToBackstack()दौरान कॉल करके सहेजे जाने वाले उदाहरण का अनुरोध करना पड़ता है fragment transaction

  • Fragment अंदर रहना है activity

क्या कोई अतिरिक्त मतभेद हैं?


8
घोषणापत्रों में प्रकट होने की आवश्यकता नहीं है। हमारे पास घोंसले के टुकड़े हैं, लेकिन हमारे पास नेस्टेड
एक्टिविटीज़

जवाबों:


52

वे दो पूरी तरह से अलग चीजें हैं:

एक गतिविधि एक अनुप्रयोग घटक है जो एक स्क्रीन प्रदान करता है, जिसके साथ उपयोगकर्ता कुछ करने के लिए बातचीत कर सकते हैं। अधिक विवरण: http://developer.android.com/guide/compenders/activities.html

जबकि एक फ्रैगमेंट एक गतिविधि में उपयोगकर्ता के व्यवहार या उपयोगकर्ता इंटरफ़ेस के एक हिस्से का प्रतिनिधित्व करता है। http://developer.android.com/guide/compenders/fragments.html


38

गतिविधि और टुकड़े के बीच मुख्य अंतर

  1. गतिविधि एक एप्लिकेशन घटक है जो उपयोगकर्ता इंटरफ़ेस देता है जहां उपयोगकर्ता बातचीत कर सकता है। टुकड़ा एक गतिविधि का एक हिस्सा है, जो उस गतिविधि में अपना खुद का यूआई योगदान देता है।
  2. टेबलेट के लिए या यदि मोबाइल परिदृश्य में है, तो टुकड़े का उपयोग करके हम राज्य सूची और अन्य सूचियों को दिखाने के लिए एकमात्र सूची की तरह दो सूची दिखा सकते हैं, राज्य विवरण को एकल गतिविधि में दिखाएंगे, लेकिन गतिविधि का उपयोग करके हम एक ही काम नहीं कर सकते।
  3. गतिविधि टुकड़ा पर निर्भर नहीं है। लेकिन टुकड़ा गतिविधि पर निर्भर है, यह स्वतंत्र रूप से मौजूद नहीं हो सकता है।
  4. गतिविधि में खंड का उपयोग किए बिना हम बहु-फलक UI नहीं बना सकते हैं। लेकिन एक ही गतिविधि में कई अंशों का उपयोग करके हम बहु-फलक UI बना सकते हैं।
  5. यदि हम केवल गतिविधि का उपयोग करके एक परियोजना बनाते हैं तो इसका प्रबंधन करना मुश्किल है लेकिन अगर हम टुकड़ों का उपयोग करते हैं तो परियोजना संरचना अच्छी होगी और हम इसे आसानी से संभाल सकते हैं।
  6. एक गतिविधि में 0 या एकाधिक संख्या में टुकड़े हो सकते हैं। एक खंड का कई गतिविधियों में पुन: उपयोग किया जा सकता है, इसलिए यह गतिविधियों में पुन: प्रयोज्य घटक की तरह कार्य करता है।
  7. गतिविधि का अपना जीवन चक्र होता है लेकिन टुकड़ा का अपना जीवन चक्र होता है।
  8. गतिविधि के लिए, हमें सिर्फ मेनिफेस्ट में उल्लेख करने की आवश्यकता है, लेकिन टुकड़े के लिए इसकी आवश्यकता नहीं है।
  9. गतिविधि बहुत सारी मेमोरी का उपयोग करती है और टुकड़ा गैर-मेमोरी का उपयोग किया जाता है।
  10. गतिविधि लाइट वेट नहीं है। टुकड़ा लाइट वजन है।

अच्छी व्याख्या।
अभिषेक कुमार

क्या कोई # 10 पर विस्तार से बता सकता है। गतिविधि की तुलना में टुकड़े को हल्का क्या बनाता है?
dazzieta

# 7 का कोई मतलब नहीं है: - \
t3chb0t

23

Android डेवलपर प्रलेखन के अनुसार, उनके जीवन चक्र में खंड और गतिविधि के बीच अंतर।

डॉक्टर लिंक http://developer.android.com/guide/compenders/fragments.html#Lifecycle

एक गतिविधि और एक टुकड़े के बीच जीवनचक्र में सबसे महत्वपूर्ण अंतर यह है कि किसी को उसके संबंधित स्टैक में कैसे संग्रहीत किया जाता है। एक गतिविधि को गतिविधियों के बैक स्टैक में रखा जाता है जिसे सिस्टम द्वारा प्रबंधित किया जाता है जब वह डिफ़ॉल्ट रूप से बंद हो जाता है (ताकि उपयोगकर्ता बैक बटन के साथ उस पर वापस नेविगेट कर सके, जैसा कि कार्य और बैक स्टैक में चर्चा की गई है)। हालाँकि, एक टुकड़ा को होस्ट गतिविधि द्वारा प्रबंधित बैक स्टैक में रखा जाता है, जब आप स्पष्ट रूप से अनुरोध करते हैं कि खंड को हटाने वाले लेनदेन के दौरान AddToBackStack () कॉल करके उदाहरण सहेजा जाए।

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

& बहु फलक लेआउट के लिए आपको fragmentउसका उपयोग करना होगा जिसे आप प्राप्त नहीं कर सकते activity


20

गतिविधि एक अनुप्रयोग का यूआई है जिसके माध्यम से उपयोगकर्ता बातचीत कर सकता है और फ्रैगमेंट गतिविधि का हिस्सा है, यह गतिविधि के अंदर एक उप-गतिविधि है जिसका अपना जीवन चक्र है जो गतिविधि जीवन चक्र के समानांतर चलता है।

Activity LifeCycle                           Fragment LifeCycle
onCreate()                                     onAttach()
    |                                              |
onStart()______onRestart()                     onCreate()
    |             |                                |
onResume()        |                            onCreateView()
    |             |                                |
onPause()         |                            onActivityCreated()
    |             |                                |
onStop()__________|                             onStart()
    |                                              |
onDestroy()                                    onResume()
                                                   |
                                                onPause()
                                                   |
                                                onStop()
                                                   |
                                              onDestroyView()
                                                   |
                                               onDestroy()
                                                   |
                                               onDetach()

5

गतिविधि
1. गतिविधियाँ एंड्रॉइड प्लेटफ़ॉर्म पर ऐप्स के मूलभूत बिल्डिंग ब्लॉक्स में से एक हैं। वे एक ऐप के साथ उपयोगकर्ता के इंटरैक्शन के लिए प्रवेश बिंदु के रूप में कार्य करते हैं और यह भी केंद्रीय है कि उपयोगकर्ता किसी ऐप के भीतर या ऐप के बीच कैसे नेविगेट करता है
2. लाइफसाइकल विधियों को ओएस द्वारा होस्ट किया जाता है।
3. गतिविधि का जीवनचक्र

टुकड़े
1. एक टुकड़ा गतिविधि में एक व्यवहार या उपयोगकर्ता इंटरफ़ेस के एक हिस्से का प्रतिनिधित्व करता है। आप मल्टी-फलक UI बनाने के लिए एक एकल गतिविधि में कई टुकड़ों को जोड़ सकते हैं और कई गतिविधियों में एक टुकड़े का पुन: उपयोग कर सकते हैं। आप किसी गतिविधि के एक मॉड्यूलर खंड के रूप में एक टुकड़े के बारे में सोच सकते हैं, जिसका अपना जीवनचक्र है, अपने स्वयं के इनपुट ईवेंट प्राप्त करता है, और जिसे आप गतिविधि के चलने के दौरान जोड़ या हटा सकते हैं।
2. जीवनचक्र विधियों को होस्ट किया जाता है, होस्टिंग गतिविधि द्वारा होस्ट किया जाता है।
3. एक टुकड़े का जीवनचक्र

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.