Fri. Nov 16th, 2018

এন্ড্রয়েড Activity Lifecycle কিভাবে কাজ করে ?

এন্ড্রয়েড টিউটোরিয়ালের প্রথম পর্বে  আমরা আলোচনা করবো  এন্ড্রয়েড Activity Lifecycle সম্পর্কে ।এই টিউটোরিয়ালে আমরা যে টপিকগুলু শিখবোঃ

১) এন্ড্রয়েড Activity কি ? এন্ড্রয়েড Activity Lifecycle কিভাবে কাজ করে ?

২) এন্ড্রয়েড Activity Lifecycle এর মেথড গুলা  কিভাবে কাজ করে ?

এন্ড্রয়েড Activity কি ? এন্ড্রয়েড Activity Lifecycle কিভাবে কাজ করে ?

এন্ড্রয়েডেের প্রত্যেকটা Screen কিংবা Window  হলো  একেকটা Activity । অর্থাৎ আমরা যখন কোন মোবাইল এপ ওপেন করি তখন যেই স্ক্রীনটা আমাদের সামনে আসে সেটাই হলো Activity । এখন কথা হলো এই Activity গুলু  কাজ করে কিভাবে ? Activity সাধারণত একটা Lifecycle মেনে কাজ করে অর্থাৎ Activity তৈরি করা থেকে শুরু করে শেষ হওয়া পর্যন্ত একটা নির্দিষ্ট চক্র অনুযায়ী কাজ করে যাকে বলা হয় Activity Lifecycle । ওই Lifecycle ম্যানটেইন করার জন্য Android Operating System এ কিছু ফাংশন বা মেথড দেয়া আছে । এই মেথড গুলু হলো onCreate( ) , onStart( ) , onPause( ) , onResume( ) , onStop( ) , onDestroy( ) এবং onRestart( ) । এই মেথডগুলু দিয়েই Android Activity Lifecycle হ্যান্ডেল করা হয় ।

Android Activity Lifecycle
Android Activity Lifecycle

এন্ড্রয়েড Activity Lifecycle এর মেথডগুলু  কিভাবে কাজ করে ?

এতক্ষণে আমরা জানতে পারলাম যে Android Activity Lifecycle কিছু মেথডের মাদ্ধমে হ্যান্ডেল করা হয় । তো দেখে নেয়া যাক এই মেথডগুলু কিভাবে কাজ করেঃ

১ ) onCreate( ) মেথডঃ  আমরা যখন এপ চালু করি ঠিক তখনই এই মেথড ট্রিগার করে । অন্য কোন মেথড কল করা হোক বা না হোক কিন্তু onCreate( ) মেথড অবশ্যই কল করতে হবে কারণ এই মেথডের মদ্ধেই Activity Layout বাইন্ড করা থাকে ।

২ ) onStart( ) মেথডঃ  onCreate( ) মেথড চালু হওয়ার ঠিক পরের মুহূর্তেই onStart ( ) মেথড চালু হয় । অর্থাৎ Activity যখন ইউসারের কাছে ভিসিবল হবে ঠিক তখনই এই মেথড কল হয় ।

৩ ) onResume ( ) মেথডঃ onStart( ) মেথড চালু হওয়ার ঠিক পরের মুহূর্তেই onResume ( ) মেথড চালু হয় । অর্থাৎ Activity এর সাথে ইউসার যখন Interact  করা শুরু করে  ঠিক তখনই এই মেথড কল হয় ।

৪ ) onPause ( ) মেথডঃ onPause ( ) মেথড সাধারণত কোন ধরনের কোড এক্সিকিউট করে না । যখন একটা Activity থেকে আরেকটা Activity তে যাওয়া হয় তখন আগের Activity কে pause করে দেয়ার জন্য onPause ( ) মেথড কল করা হয় ।

৫ ) onStop ( ) মেথডঃ  onStop ( ) মেথড কল হয় যখন Activity ইউসারের কাছে ভিসিবল থাকে না । আমরা যখন হোম বাটনে ক্লিক করি তখন এই মেথড কল হয় ।

৬ ) onDestroy ( ) মেথডঃ  Android System যখন কোন এপকে destroy করে তখন onDestroy ( ) মেথড কল করা হয় । Destroy করার সময় প্রথমে onPause ( ) কল হবে তারপর onStop ( ) এবং ঠিক তারপর onDestroy ( ) মেথড কল হয় ।

৭ ) onRestart ( ) মেথডঃ  onStop ( ) মেথড থেকে নতুন করে যখন  এপ চালু হয় তখন onRestart ( ) কল হয় । তবে onDestroy ( ) এর পরে কিন্তু onRestart ( ) মেথড কল হবে না বরং onCreate ( ) মেথড কল হবে । নিচে একটা প্রোগ্রামের মাদ্ধমে বুঝিয়ে দেয়া হয়েছে

public class MainActivity extends AppCompatActivity {

    /** Called when the activity is first created. */    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Toast.makeText(this, "onCreate method triggered !", Toast.LENGTH_SHORT).show();
    }

    /** Called when the activity is about to become visible. */  
    @Override
    protected void onStart() {
        super.onStart();
        Toast.makeText(this, "onStart method trigger", Toast.LENGTH_SHORT).show();
    }

    /** Called when the activity has become visible. */
    @Override
    protected void onResume() {
        super.onResume();
        Toast.makeText(this, "onResume method trigger", Toast.LENGTH_SHORT).show();
    }

    /** Called when another activity is taking focus. */
    @Override
    protected void onPause() {
        super.onPause();
        Toast.makeText(this, "onPause method trigger", Toast.LENGTH_SHORT).show();
    }

    /** Called when the activity is no longer visible. */
    @Override
    protected void onStop() {
        super.onStop();
        Toast.makeText(this, "onStop method trigger", Toast.LENGTH_SHORT).show();
    }
    
    /** Called just before the activity is destroyed. */
    @Override
    protected void onDestroy() {
        super.onDestroy();
        Toast.makeText(this, "onDestroy method trigger", Toast.LENGTH_SHORT).show();
    }

    /** Called when the activity is restarted after stopping it. */
    @Override
    protected void onRestart() {
        super.onRestart();
        Toast.makeText(this, "onRestart method trigger", Toast.LENGTH_SHORT).show();
    }
}

আজকে এই পর্যন্তই । ভালো লাগলে শেয়ার করবেন

Comments

comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: