কম্পিউটার টিউটোরিয়াল

Android-এ গ্লোবাল ভেরিয়েবল ডিক্লেয়ার করার পদ্ধতি (Singleton Pattern)


Singleton Pattern ব্যবহার করে গ্লোবাল ডেটা শেয়ার করার উদাহরণ

Android-এ গ্লোবাল ভেরিয়েবল ডিক্লেয়ার করার সেরা পদ্ধতি হলো `Application` ক্লাস এক্সটেন্ড করা বা `Singleton Pattern` ব্যবহার করা। এই উদাহরণটি Singleton Pattern দেখায়।

ধাপ ১: নতুন প্রজেক্ট তৈরি করুন

Android Studio-তে File → New Project এ যান এবং প্রয়োজনীয় বিবরণ পূরণ করে একটি নতুন প্রজেক্ট তৈরি করুন।

ধাপ ২: লেআউট XML-এ TextView যোগ করুন

res/layout/activity_main.xml ফাইলে নিচের কোডটি যোগ করুন:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:app="https://schemas.android.com/apk/res-auto"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:gravity="center"
    tools:context=".MainActivity">

    <TextView
        android:id="@+id/tvEvent"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="40sp"
        android:layout_marginTop="30dp"
        android:text="ক্লিক করুন"/>

</LinearLayout>

ধাপ ৩: Singleton ক্লাস তৈরি করুন (SingleToneClass.java)

নতুন একটি Java ক্লাস তৈরি করুন এবং নিচের কোডটি যোগ করুন:

package com.example.globalvariable;

public class SingleToneClass {

    private String data;
    private static final SingleToneClass ourInstance = new SingleToneClass();

    public static SingleToneClass getInstance() {
        return ourInstance;
    }

    private SingleToneClass() {
        // প্রাইভেট কনস্ট্রাক্টর
    }

    public void setData(String data) {
        this.data = data;
    }

    public String getData() {
        return data;
    }
}

ধাপ ৪: MainActivity.java-এ Singleton ব্যবহার করুন

src/MainActivity.java ফাইলে নিচের কোডটি যোগ করুন:

package com.example.globalvariable;

import android.os.Build;
import android.os.Bundle;
import android.support.annotation.RequiresApi;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {

    TextView tvEvent;

    @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        tvEvent = findViewById(R.id.tvEvent);
        tvEvent.setText("ক্লিক করুন");

        tvEvent.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // Singleton ইনস্ট্যান্স পান
                SingleToneClass singleToneClass = SingleToneClass.getInstance();
                // ডেটা সেট করুন
                singleToneClass.setData("এটি একটি নমুনা ডেটা");
                // ডেটা পড়ুন এবং TextView-এ দেখান
                tvEvent.setText(singleToneClass.getData());
            }
        });
    }
}

ধাপ ৫: AndroidManifest.xml

app/manifests/AndroidManifest.xml ফাইলে নিচের কোডটি থাকবে:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android"
    package="com.example.globalvariable">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">

        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>
</manifest>

বিকল্প: Application ক্লাস ব্যবহার করে (বেশি রিকমেন্ডেড)

বেশি বড় অ্যাপের জন্য `android.app.Application` এক্সটেন্ড করে একটি কাস্টম ক্লাস তৈরি করুন এবং Manifest-এ `android:name=".MyApplication"` সেট করুন। সেটা সব কম্পোনেন্ট থেকে অ্যাক্সেসযোগ্য।

অ্যাপ্লিকেশন চালানোর পদ্ধতি

আপনার Android ডিভাইস কম্পিউটারের সাথে সংযুক্ত করুন। Android Studio-তে প্রজেক্টের activity ফাইল খুলে টুলবারের Run আইকনে ক্লিক করুন। আপনার মোবাইল ডিভাইস সিলেক্ট করুন এবং TextView-এ ক্লিক করলে Singleton-এ সংরক্ষিত ডেটা দেখাবে।

Android-এ গ্লোবাল ভেরিয়েবল ডিক্লেয়ার করার পদ্ধতি (Singleton Pattern)

Android-এ গ্লোবাল ভেরিয়েবল ডিক্লেয়ার করার পদ্ধতি (Singleton Pattern)

  1. অ্যান্ড্রয়েডে গ্লোবাল কনটেক্সট সহ অ্যারে সিঙ্গলটনে সংরক্ষণ করা

  2. অ্যান্ড্রয়েডে গ্লোবাল কনটেক্সটের সাথে সিঙ্গলটন কীভাবে ব্যবহার করবেন?

  3. অ্যান্ড্রয়েডে গ্লোবাল ভেরিয়েবল ঘোষণা করার পদ্ধতি

  4. অ্যান্ড্রয়েড স্টুডিওতে স্ট্যাটিক ভেরিয়েবল কোথায় এবং কীভাবে ব্যবহার করবেন