Android Academy · पाठ

Activity और लाइफ़साइकल

Activity क्या है यह सीखें, Activity लाइफ़साइकल कॉलबैक (onCreate, onStart, onResume, onPause, onStop, onDestroy) समझें और ViewBinding का उपयोग करें।

पाठ 2, कुल 7 में से11 चरण

Activity और लाइफ़साइकल, CoddyKit पर Android Academy का एक निःशुल्क पाठ है। यह 7 में से 2वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह Android Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Android Academy पाठ्यक्रम में कुल 7 पाठ शामिल हैं।

Activity क्या होती है?

Activity आपके Android ऐप की एकल स्क्रीन होती है।

  • हर स्क्रीन (लॉगिन, होम, सेटिंग) एक Activity होती है
  • यह लेआउट (XML) और उपयोगकर्ता की इंटरैक्शन को प्रबंधित करती है
  • इसे AndroidManifest.xml में घोषित किया जाता है

इसे वेब पेज के Android समकक्ष की तरह समझें — हर पेज एक Activity होता है।

Activity जीवनचक्र

उपयोगकर्ता के ऐप में नेविगेट करने पर Activity जीवनचक्र अवस्थाओं की एक श्रृंखला से गुजरती है:

  • बनाई गई → शुरू की गई → फिर से शुरू की गई (दृश्य और सक्रिय)
  • रुकी हुई (आंशिक रूप से छिपी हुई)
  • बंद (पूरी तरह छिपी हुई)
  • नष्ट (Activity समाप्त हो गई)

इन बदलावों पर प्रतिक्रिया देने के लिए आप जीवनचक्र मेथड को ओवरराइड करते हैं।

जीवनचक्र कॉलबैक

छह मुख्य जीवनचक्र कॉलबैक:

  • onCreate() — Activity बनाई जा रही है। अपना लेआउट यहाँ तैयार करें।
  • onStart() — Activity दिखाई देने लगती है।
  • onResume() — Activity अग्रभूमि में है, उपयोगकर्ता इंटरैक्ट कर सकता है।
  • onPause() — उपयोगकर्ता जा रहा है। अस्थायी डेटा सहेजें।
  • onStop() — Activity अब दिखाई नहीं दे रही है।
  • onDestroy() — Activity नष्ट की जा रही है।

MainActivity का उदाहरण

जीवनचक्र लॉगिंग वाली एक न्यूनतम Activity:

import android.os.Bundle
import android.util.Log
import androidx.appcompat.app.AppCompatActivity

class MainActivity : AppCompatActivity() {

    private val TAG = "MainActivity"

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        Log.d(TAG, "onCreate")
    }

    override fun onResume() {
        super.onResume()
        Log.d(TAG, "onResume — user is here")
    }

    override fun onPause() {
        super.onPause()
        Log.d(TAG, "onPause — saving state")
    }

    override fun onDestroy() {
        super.onDestroy()
        Log.d(TAG, "onDestroy")
    }
}

जीवनचक्र क्यों महत्वपूर्ण है

जीवनचक्र की अनदेखी करने से होने वाली सामान्य गलतियाँ:

  • onResume में वीडियो चलाना, लेकिन onPause में उसे रोकना भूल जाना — बैटरी जल्दी खत्म होती है
  • onCreate में सेंसर लिस्नर पंजीकृत करना, लेकिन onDestroy में उसका पंजीकरण रद्द न करना — मेमोरी लीक
  • onPause में फ़ॉर्म डेटा सहेजना भूल जाना — फ़ोन कॉल आने पर उपयोगकर्ता की प्रगति खो जाती है

अवस्था सहेजना: onSaveInstanceState

जब उपयोगकर्ता फ़ोन को घुमाता है, तो Activity नष्ट होकर फिर बनाई जाती है। आपकी यूआई अवस्था खो जाती है।

अस्थायी अवस्था को onSaveInstanceState(bundle) में सहेजें और onCreate(savedInstanceState) में पुनर्स्थापित करें।

अवस्था सहेजना और पुनर्स्थापित करना

कॉन्फ़िगरेशन में बदलाव के दौरान डेटा बनाए रखें:

class CounterActivity : AppCompatActivity() {

    private var count = 0

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_counter)

        // Restore saved state after rotation
        count = savedInstanceState?.getInt("count") ?: 0
    }

    override fun onSaveInstanceState(outState: Bundle) {
        super.onSaveInstanceState(outState)
        outState.putInt("count", count)
    }
}

बैक स्टैक

Android Activities का एक बैक स्टैक प्रबंधित करता है:

  • नई Activity लॉन्च करने पर वह स्टैक में जोड़ दी जाती है
  • Back दबाने पर सबसे ऊपर वाली Activity स्टैक से हटकर नष्ट हो जाती है
  • पिछली Activity अपने-आप फिर शुरू हो जाती है

इसीलिए आपको finish() को मैन्युअल रूप से कॉल नहीं करना चाहिए, जब तक कि आप वर्तमान स्क्रीन को बैक स्टैक से हटाना न चाहते हों।

कॉन्फ़िगरेशन में बदलाव

कोई भी कॉन्फ़िगरेशन बदलाव (घुमाना, भाषा बदलना, कीबोर्ड जोड़ना) डिफ़ॉल्ट रूप से Activity को फिर से बनाता है।

आधुनिक समाधान ViewModel का उपयोग करना है — यह कॉन्फ़िगरेशन बदलावों के दौरान बना रहता है और आपके डेटा को सुरक्षित रखता है। आप Architecture मॉड्यूल में ViewModel सीखेंगे।

त्वरित जाँच

लेआउट तैयार करने (setContentView कॉल करने) के लिए किस जीवनचक्र मेथड में कोड लिखना चाहिए?

पुनरावृत्ति: Activities और जीवनचक्र

अब आप Android Activities को समझते हैं:

  • एक Activity = आपके ऐप की एक स्क्रीन
  • जीवनचक्र: onCreate → onStart → onResume → onPause → onStop → onDestroy
  • onSaveInstanceState में अस्थायी अवस्था सहेजें
  • घुमाने पर Activity नष्ट होकर फिर बनाई जाती है
  • Android अपने-आप बैक स्टैक प्रबंधित करता है

अगला विषय: लेआउट और व्यू की सहायता से स्क्रीन डिज़ाइन करना।

शुरुआत निःशुल्क

एआई शिक्षक के साथ Kotlin सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
36
पाठ
152

अक्सर पूछे जाने वाले प्रश्न

क्या “Activity और लाइफ़साइकल” पाठ निःशुल्क है?

हाँ — Android Academy अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “Activity और लाइफ़साइकल” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। Android Academy पाठ्यक्रम में कुल 7 पाठ शामिल हैं।

“Activity और लाइफ़साइकल” में मैं क्या सीखूँगा?

Activity क्या है यह सीखें, Activity लाइफ़साइकल कॉलबैक (onCreate, onStart, onResume, onPause, onStop, onDestroy) समझें और ViewBinding का उपयोग करें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Android Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Android Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Android Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 7 में से 2वाँ पाठ है।

“Activity और लाइफ़साइकल” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Android Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Android Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. परियोजना संरचना और मेनिफ़ेस्ट
  2. Activity और लाइफ़साइकल
  3. लेआउट और व्यू
  4. उपयोगकर्ता इनपुट संभालना
  5. Intent और नेविगेशन
  6. Fragments
  7. अनुमतियाँ और रनटाइम अनुरोध
← Android Academy पर वापस जाएँ