Android: এটি কী, সিস্টেম আর্কিটেকচার এবং Kotlin-এ উন্নয়ন

লেখক: IT Sectr প্রকাশিত: 2026-02-07 পড়ার সময়: 11 মিনিট

Android হল Google-এর একটি মোবাইল অপারেটিং সিস্টেম যা ওপেন সোর্স (AOSP) এবং Linux কার্নেলে চলে। Android-এর উন্নয়ন Kotlin-এ Android Studio ব্যবহার করে করা হয়। নিবন্ধটি OS আর্কিটেকচার, অ্যাপ্লিকেশন উপাদান, Jetpack Compose এবং Google Play-এ প্রকাশ কভার করে।

মূল বিষয়

  • Android — Linux কার্নেলের উপর OS চারটি স্তর সহ: কার্নেল, HAL, Android Runtime, Application Framework
  • Kotlin — নাল সুরক্ষা এবং অ্যাসিঙ্ক্রোনাসির জন্য করুটিন সহ প্রাথমিক উন্নয়ন ভাষা
  • Activity, Service, BroadcastReceiver, ContentProvider — Android অ্যাপ্লিকেশনের চারটি বাধ্যতামূলক উপাদান
  • Jetpack Compose — Google-এর নতুন প্রকল্পের জন্য সুপারিশকৃত ঘোষণামূলক UI ফ্রেমওয়ার্ক
  • Google Play — 15-30% কমিশন এবং Play Integrity নিরাপত্তা পরীক্ষা সহ প্রধান বিতরণ চ্যানেল

Android কী?

Android হল একটি মোবাইল অপারেটিং সিস্টেম যা Linux কার্নেলের উপর ভিত্তি করে, Google 2007 সাল থেকে তৈরি করছে। সোর্স কোড Android Open Source Project (AOSP)-এর অংশ হিসাবে Apache 2.0 লাইসেন্সের অধীনে উন্মুক্ত। প্রতিটি প্রস্তুতকারক সিস্টেম পরিবর্তন করতে পারে এবং তাদের ডিভাইসে ইনস্টল করতে পারে।

StatCounter (2026) অনুসারে, Android বিশ্ব মোবাইল OS বাজারের প্রায় 72% দখল করে আছে। বৃহত্তম প্রস্তুতকারকরা হলেন Samsung, Xiaomi, Oppo, Vivo, Google Pixel। খণ্ডিতকরণ প্ল্যাটফর্মের একটি মূল সমস্যা: বিভিন্ন OS সংস্করণ সহ হাজার হাজার মডেল একসাথে ব্যবহার করা হয়।

Android-এর আর্কিটেকচার অনুমতি (permissions) নীতির উপর নির্মিত: প্রতিটি অ্যাপ্লিকেশন একটি পৃথক Linux UID-এর অধীনে চলে এবং শুধুমাত্র তার নিজস্ব ডেটাতে অ্যাক্সেস রাখে। সিস্টেম রিসোর্সে (ক্যামেরা, মাইক্রোফোন, পরিচিতি) অ্যাক্সেস Android 6 (API 23) থেকে শুরু করে রানটাইমে Android Permissions-এর মাধ্যমে অনুরোধ করা হয়।

Android সংস্করণের ইতিহাস

Android 1.0 2008 সালে HTC Dream-এ প্রকাশিত হয়েছিল। মূল মাইলফলক: Android 4.0 Ice Cream Sandwich (ফোন এবং ট্যাবলেটের জন্য ইউনিফাইড UI), Android 5.0 Lollipop (Material Design), Android 6.0 (রানটাইম অনুমতি), Android 10 (ডার্ক থিম, অঙ্গভঙ্গি), Android 12 (Material You)। 2023 সাল থেকে, Google ডেজার্ট নাম ছাড়াই বার্ষিক বড় রিলিজে স্যুইচ করেছে।

Android সংস্করণবছরমূল উদ্ভাবন
Android 1.02008HTC Dream-এ প্রথম প্রকাশ
Android 4.0 (ICS)2011ফোন এবং ট্যাবলেটের জন্য ইউনিফাইড ডিজাইন
Android 5.0 (L)2014Material Design, Dalvik-এর পরিবর্তে ART
Android 6.0 (M)2015রানটাইম অনুমতি, Doze মোড
Android 8.0 (O)2017Kotlin অফিসিয়াল ভাষা হিসাবে
Android 10 (Q)2019Scoped Storage, ডার্ক থিম
Android 12 (S)2021Material You, Privacy Dashboard
Android 152024Private Space, স্যাটেলাইট সংযোগ

Android আর্কিটেকচার: চারটি মূল স্তর

Android আর্কিটেকচার চারটি প্রধান স্তর নিয়ে গঠিত যা হার্ডওয়্যারকে ব্যবহারকারীর অ্যাপ্লিকেশন থেকে বিচ্ছিন্ন করে। প্রতিটি স্তর কঠোরভাবে সংজ্ঞায়িত ইন্টারফেসের মাধ্যমে নীচের স্তরের পরিষেবাগুলি ব্যবহার করে।

Linux কার্নেল এবং HAL

সর্বনিম্ন স্তরটি একটি পরিবর্তিত Linux কার্নেল (LTS, Android 15-এ সংস্করণ 6.x)। এটি মেমরি ব্যবস্থাপনা, প্রক্রিয়া, নেটওয়ার্ক স্ট্যাক এবং ড্রাইভারগুলি পরিচালনা করে। Hardware Abstraction Layer (HAL) হার্ডওয়্যারের সাথে ইন্টারফেসের জন্য একটি ইউনিফাইড API প্রদান করে: ক্যামেরা, Bluetooth, Wi-Fi, সেন্সর। প্রস্তুতকারকরা উপরের স্তরগুলিকে প্রভাবিত না করে HAL মডিউল প্রয়োগ করে।

Android Runtime (ART)

ART অ্যাপ্লিকেশনের DEX বাইটকোড নির্বাহ করে। Android 5.0 থেকে শুরু করে, ART Dalvik-কে প্রতিস্থাপন করেছে এবং কর্মক্ষমতা উন্নতির জন্য Ahead-of-Time (AOT) কম্পাইলেশন ব্যবহার করে। প্রতিটি অ্যাপ্লিকেশনের নিজস্ব প্রক্রিয়া একটি পৃথক ART ইনস্ট্যান্স সহ থাকে। আবর্জনা সংগ্রহ (GC) ন্যূনতম বিরতি দিয়ে চলে — একটি সাধারণ GC বিরতি 2-4 ms।

Application Framework

Framework হল সেই স্তর যা ডেভেলপার সরাসরি কাজ করে। এতে Activity Manager (স্ক্রিন স্ট্যাক), Content Providers (ডেটা অ্যাক্সেস), Resource Manager (স্থানীয়করণ, সংস্থান), Notification Manager, Location Manager অন্তর্ভুক্ত। সমস্ত সিস্টেম পরিষেবা Binder IPC — Android-এর আন্তঃপ্রক্রিয়া যোগাযোগ প্রক্রিয়ার মাধ্যমে কল করা হয়।

kotlin
// AIDL ইন্টারফেসের মাধ্যমে Binder-এর সাথে কাজের উদাহরণ
interface IDataService : android.os.IInterface {
    fun getData(): List<DataItem>
    fun saveData(item: DataItem): Boolean
}

// সেবা বাস্তবায়ন
class DataService : Service() {
    private val binder = object : IDataService.Stub() {
        override fun getData(): List<DataItem> = repository.getAll()
        override fun saveData(item: DataItem): Boolean = repository.save(item)
    }

    override fun onBind(intent: Intent?): IBinder = binder
}

সিস্টেম অ্যাপস

শীর্ষ স্তরটি স্ট্যান্ডার্ড সিস্টেম অ্যাপ্লিকেশন: ফোন, পরিচিতি, ক্যামেরা, সেটিংস, ব্রাউজার। এদের ব্যবহারকারী অ্যাপ্লিকেশনের চেয়ে বেশি বিশেষাধিকার নেই, তবে তৃতীয় পক্ষের অ্যাপ্লিকেশন দ্বারা প্রতিস্থাপিত হতে পারে। Android 15-এ, সিস্টেম অ্যাপ্লিকেশনগুলি প্রস্তুতকারকের OTA আপডেট থেকে স্বাধীনভাবে Google Play System Updates-এর মাধ্যমে আপডেট করা হয়।

Kotlin — Android উন্নয়নের প্রাথমিক ভাষা

Kotlin হল JetBrains-এর একটি স্ট্যাটিক্যালি টাইপ করা প্রোগ্রামিং ভাষা যা JVM-এ চলে। Google 2017 সালে Google I/O-তে Kotlin-কে অফিসিয়াল Android ভাষা ঘোষণা করেছে। Kotlin Java-এর সাথে সম্পূর্ণ সামঞ্জস্যপূর্ণ কিন্তু এর ত্রুটিগুলি দূর করে: null-safety, ডেটা ক্লাস, এক্সটেনশন ফাংশন এবং করুটিন।

Null Safety এবং প্রকার

Kotlin-এর প্রধান বৈশিষ্ট্য হল NullPointerException-এর বিরুদ্ধে অন্তর্নির্মিত সুরক্ষা। প্রকারগুলি nullable (String?) এবং non-null (String)-এ বিভক্ত। কম্পাইলার বিল্ড সময়ে nullable অ্যাক্সেস পরীক্ষা করে। Safe call (?.) এবং Elvis অপারেটর (?:) নেস্টেড চেক ছাড়াই ঐচ্ছিক মান নিয়ে কাজ সহজ করে।

kotlin
// করুটিন এবং Flow সহ Kotlin কোডের উদাহরণ
data class User(
    val id: Long,
    val name: String,
    val email: String
)

class UserRepository(
    private val api: UserApi,
    private val dao: UserDao
) {
    suspend fun getUser(id: Long): Result<User> {
        return try {
            val cached = dao.getUser(id)
            if (cached != null) {
                return Result.success(cached)
            }
            val remote = api.fetchUser(id)
            dao.insertUser(remote)
            Result.success(remote)
        } catch (e: Exception) {
            Result.failure(e)
        }
    }

    fun observeUsers(): Flow<List<User>> {
        return dao.observeAll()
            .map { list -> list.sortedBy { it.name } }
            .flowOn(Dispatchers.Default)
    }
}

উদাহরণটি অ্যাসিঙ্ক্রোনাস নেটওয়ার্ক এবং ডেটাবেস অ্যাক্সেসের জন্য করুটিন (suspend ফাংশন), ডেটা পরিবর্তনের প্রতিক্রিয়াশীল পর্যবেক্ষণের জন্য Flow এবং নিরাপদ ত্রুটি পরিচালনার জন্য Result প্রদর্শন করে। করুটিন থ্রেড ওভারহেড ছাড়াই callbacks এবং RxJava প্রতিস্থাপন করে।

Kotlin করুটিন এবং Flow

Kotlin করুটিন হল হালকা থ্রেড যা একটি ভাগ করা থ্রেড পুলে চলে। নেটওয়ার্ক এবং ডিস্কের জন্য Dispatchers.IO, UI-এর জন্য Dispatchers.Main, CPU-নিবিড় কাজের জন্য Dispatchers.Default। viewModelScope এবং lifecycleScope উপাদানটি ধ্বংস হলে স্বয়ংক্রিয়ভাবে করুটিন বাতিল করে।

kotlin
// করুটিন এবং StateFlow সহ ViewModel
class UserViewModel(
    private val repository: UserRepository
) : ViewModel() {

    private val _users = MutableStateFlow<List<User>>(emptyList())
    val users: StateFlow<List<User>> = _users.asStateFlow()

    private val _loading = MutableStateFlow(false)
    val loading: StateFlow<Boolean> = _loading.asStateFlow()

    init {
        viewModelScope.launch {
            repository.observeUsers().collect { userList ->
                _users.value = userList
            }
        }
    }

    fun refresh() {
        viewModelScope.launch {
            _loading.value = true
            repository.getUser(42).onSuccess { user ->
                _users.value = listOf(user)
            }
            _loading.value = false
        }
    }
}

Android Studio এবং উন্নয়ন সরঞ্জাম

Android Studio হল IntelliJ IDEA-ভিত্তিক অফিসিয়াল IDE, যা Google তৈরি করেছে। এতে কোড এডিটর, Layout Inspector, ডিভাইস এমুলেটর, APK Analyzer, Profiler (CPU, মেমরি, নেটওয়ার্ক, শক্তি) এবং Firebase ইন্টিগ্রেশন অন্তর্ভুক্ত। Android Studio 2024 (Ladybug) মাল্টিপ্ল্যাটফর্ম KMP মোড সহ Kotlin 2.0 সমর্থন করে।

Android এমুলেটর

Android এমুলেটর হার্ডওয়্যার ত্বরণের জন্য KVM (Linux) বা Hyper-V (Windows) ব্যবহার করে। এটি GPS, সেন্সর, ক্যামেরা, কল এবং SMS-এর সিমুলেশন সমর্থন করে। Google Pixel 9 Pro API 35 এবং 8 GB এমুলেটর RAM সহ পরীক্ষার জন্য প্রস্তাবিত কনফিগারেশন।

Android Profiler এবং ডিবাগিং

Profiler রিয়েল টাইমে CPU লোড, মেমরি বরাদ্দ, নেটওয়ার্ক অনুরোধ এবং শক্তি খরচ প্রদর্শন করে। Memory Profiler রেফারেন্স ট্রির মাধ্যমে heap ডাম্পিং এবং লিক বিশ্লেষণের অনুমতি দেয়। Network Inspector বডি এবং হেডার সহ সমস্ত HTTP/HTTPS অনুরোধ রেকর্ড করে। গভীর বিশ্লেষণের জন্য Android Studio Canary ব্যবহার করা হয়।

Android অ্যাপ্লিকেশনের উপাদান

একটি Android অ্যাপ্লিকেশন চার ধরণের উপাদান নিয়ে গঠিত, প্রতিটির নিজস্ব এন্ট্রি পয়েন্ট এবং জীবনচক্র রয়েছে। উপাদানগুলি AndroidManifest.xml ফাইলে নিবন্ধিত হয়।

উপাদানউদ্দেশ্যএন্ট্রি পয়েন্ট
Activityব্যবহারকারীর সাথে মিথস্ক্রিয়ার জন্য UI সহ স্ক্রিনAction.MAIN এবং LAUNCHER বিভাগ সহ Intent
ServiceUI ছাড়া ব্যাকগ্রাউন্ড টাস্ক নির্বাহstartService() বা bindService()
BroadcastReceiverসিস্টেম বা কাস্টম ইভেন্ট গ্রহণম্যানিফেস্টে বা কোডে নিবন্ধন
ContentProviderগঠিত ডেটাতে অ্যাক্সেস পরিচালনাContentResolver-এর মাধ্যমে URI

Activity এবং Intent

Activity হল ব্যবহারকারী ইন্টারফেসের মৌলিক উপাদান। প্রতিটি স্ক্রিন একটি পৃথক Activity বা Activity-র ভিতরে Fragment। স্ক্রিনের মধ্যে নেভিগেশন Intent-এর মাধ্যমে করা হয় — একটি বস্তু যা একটি ক্রিয়া (ACTION_VIEW, ACTION_SEND) এবং ডেটা (URI) ধারণ করে। Jetpack Navigation Graph-এ, নেভিগেশন XML-এ বর্ণিত হয়।

Service এবং WorkManager

Service ব্যাকগ্রাউন্ড টাস্ক সম্পাদন করে, কিন্তু Android 8 থেকে শুরু করে, ব্যাকগ্রাউন্ড পরিষেবাগুলি সীমাবদ্ধ। WorkManager হল চেইন, সীমাবদ্ধতা (যেমন, শুধুমাত্র চার্জ করার সময়) এবং ক্র্যাশের পরে পুনরায় শুরু করার সমর্থন সহ বিলম্বিত এবং নিশ্চিত ব্যাকগ্রাউন্ড কাজের জন্য প্রস্তাবিত লাইব্রেরি।

Jetpack Compose বনাম XML Layouts

Jetpack Compose এবং ঐতিহ্যবাহী XML লেআউটের মধ্যে পছন্দ একটি Android প্রকল্প শুরু করার সময় প্রধান আর্কিটেকচারাল সিদ্ধান্ত। XML Layouts (RecyclerView, ConstraintLayout, FrameLayout) 2008 সাল থেকে মানদণ্ড। Jetpack Compose 2021 সালে একটি ঘোষণামূলক বিকল্প হিসাবে প্রবর্তিত হয়েছিল।

মাপকাঠিXML LayoutsJetpack Compose
দৃষ্টান্তবাধ্যতামূলক (View ট্রি)ঘোষণামূলক (@Composable ফাংশন)
সর্বনিম্ন সংস্করণযেকোনো (API 1+)API 21+ (Android 5.0)
লেআউটXML + data binding / ViewBindingModifier সহ Kotlin কোড
RecyclerView অ্যানালগRecyclerView + Adapter + ViewHolderLazyColumn / LazyGrid
পূর্বরূপAndroid Studio-তে XML পূর্বরূপইন্টারঅ্যাক্টিভিটি সহ @Preview অ্যানোটেশন
পুনর্গঠনnotifyDataSetChanged (সম্পূর্ণ)স্বয়ংক্রিয়, সূক্ষ্ম (DiffUtil)
আন্তঃকার্যক্ষমতাসম্পূর্ণ (সমস্ত লাইব্রেরি)XML-এ ComposeView / Compose-এ AndroidView

Google সমস্ত নতুন প্রকল্পের জন্য Jetpack Compose সুপারিশ করে। XML Layouts লিগ্যাসি প্রকল্প সমর্থন এবং যেসব ক্ষেত্রে সর্বোচ্চ View কাস্টমাইজেশন (Canvas, SurfaceView) প্রয়োজন সেসব ক্ষেত্রে প্রাসঙ্গিক থাকে। Compose কোড সমতুল্য XML + ViewBinding-এর তুলনায় গড়ে 40% ছোট।

kotlin
// Jetpack Compose — ব্যবহারকারী প্রোফাইল স্ক্রিন
@Composable
fun ProfileScreen(
    user: User,
    onEditClick: () -> Unit,
    modifier: Modifier = Modifier
) {
    Column(
        modifier = modifier
            .fillMaxSize()
            .padding(16.dp),
        horizontalAlignment = Alignment.CenterHorizontally
    ) {
        AsyncImage(
            model = user.avatarUrl,
            contentDescription = "ব্যবহারকারীর অবতার",
            modifier = Modifier
                .size(120.dp)
                .clip(CircleShape)
        )

        Spacer(modifier = Modifier.height(16.dp))

        Text(
            text = user.name,
            style = MaterialTheme.typography.headlineMedium
        )

        Text(
            text = user.email,
            style = MaterialTheme.typography.bodyLarge,
            color = MaterialTheme.colorScheme.onSurfaceVariant
        )

        Spacer(modifier = Modifier.height(24.dp))

        Button(onClick = onEditClick) {
            Icon(Icons.Default.Edit, contentDescription = null)
            Spacer(modifier = Modifier.width(8.dp))
            Text("প্রোফাইল সম্পাদনা করুন")
        }
    }
}

@Preview(showBackground = true, showSystemUi = true)
@Composable
fun ProfileScreenPreview() {
    MaterialTheme {
        ProfileScreen(
            user = User(1, "আন্না পেট্রোভা", "anna@example.com"),
            onEditClick = {}
        )
    }
}

ProfileScreen ফাংশন @Composable হিসাবে ঘোষণা করা হয়েছে — এটি View ইনস্ট্যান্স তৈরি না করে UI ঘোষণামূলকভাবে বর্ণনা করে। Compose user পরিবর্তন হলে স্বয়ংক্রিয়ভাবে স্ক্রিন আপডেট করে। @Preview এমুলেটরে বিল্ড এবং রান না করেই সরাসরি IDE-তে ফলাফল দেখায়।

Activity এবং Fragment-এর জীবনচক্র

Android-এ প্রতিটি Activity জীবনচক্রের ছয়টি অবস্থার মধ্য দিয়ে যায়: onCreate, onStart, onResume, onPause, onStop, onDestroy। Fragment onAttach, onCreateView, onViewCreated যুক্ত করে। জীবনচক্র বোঝা মেমরি ব্যবস্থাপনা এবং লিক প্রতিরোধের জন্য গুরুত্বপূর্ণ।

Activity-র প্রধান অবস্থা

onCreate — Activity তৈরি হলে একবার কল করা হয়। এখানে প্রারম্ভিককরণ করা হয়: setContentView, অ্যাডাপ্টার সেটআপ, LiveData সাবস্ক্রিপশন। onResume — Activity অগ্রভাগে আছে এবং ব্যবহারকারীর সাথে মিথস্ক্রিয়া করছে। onPause — Activity ফোকাস হারায় (ডায়ালগ, অন্য Activity)। onStop — Activity দৃশ্যমান নয়। onDestroy — Activity ধ্বংস হয়।

kotlin
// LifecycleScope-এর মাধ্যমে জীবনচক্র ব্যবস্থাপনা সহ Activity
class MainActivity : ComponentActivity() {
    private val viewModel: UserViewModel by viewModels()

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        setContent {
            MaterialTheme {
                lifecycleScope.launch {
                    repeatOnLifecycle(Lifecycle.State.STARTED) {
                        viewModel.users.collect { users ->
                            updateUi(users)
                        }
                    }
                }
            }
        }
    }

    override fun onSaveInstanceState(outState: Bundle) {
        super.onSaveInstanceState(outState)
        outState.putString("last_search", searchQuery)
    }

    override fun onRestoreInstanceState(savedInstanceState: Bundle) {
        super.onRestoreInstanceState(savedInstanceState)
        searchQuery = savedInstanceState.getString("last_search", "")
    }
}

repeatOnLifecycle ব্যবহার নিশ্চিত করে যে Activity ব্যাকগ্রাউন্ডে গেলে ডেটা সংগ্রহ থামে এবং অগ্রভাগে ফিরে এলে পুনরায় শুরু হয়। এটি লিক এবং অপ্রয়োজনীয় নেটওয়ার্ক অনুরোধ প্রতিরোধ করে। onSaveInstanceState স্ক্রিন রোটেশনে অস্থায়ী অবস্থা সংরক্ষণ করে।

Google Play: প্রকাশ এবং প্রয়োজনীয়তা

Google Play হল অফিসিয়াল Android অ্যাপ স্টোর। ডেভেলপার অ্যাকাউন্ট রেজিস্ট্রেশনের খরচ $25 এককালীন। প্রতিটি অ্যাপ্লিকেশন দূষিত কোড, নীতি লঙ্ঘন এবং ভুল অনুমতি ব্যবহারের জন্য স্বয়ংক্রিয় Google Play Integrity পরীক্ষার মধ্য দিয়ে যায়।

প্রকাশের প্রয়োজনীয়তা

Google-এর Android App Bundle (AAB) বা APK-এর মাধ্যমে অ্যাপ্লিকেশন সই প্রয়োজন। AAB হল প্রস্তাবিত বিন্যাস, যা প্রতিটি ডিভাইস কনফিগারেশনের জন্য অপ্টিমাইজড APK জেনারেশন সক্ষম করে। অ্যাপ্লিকেশনটিতে একটি বৈধ শংসাপত্র সহ একটি কী (keystore) দিয়ে সই করতে হবে। Google Play App Signing হল Google-এর পক্ষ থেকে ঐচ্ছিক কী এনক্রিপশন।

গোপনীয়তা নীতি

ব্যক্তিগত ডেটাতে অ্যাক্সেসের অনুরোধ করা সমস্ত অ্যাপ্লিকেশনকে একটি গোপনীয়তা নীতি প্রদান করতে হবে। 2024 সাল থেকে, Google-এর Data Safety ঘোষণা প্রয়োজন — একটি ফর্ম যা সংগৃহীত ডেটার ধরন এবং প্রক্রিয়াকরণের উদ্দেশ্য নির্দিষ্ট করে। Android 14+ লক্ষ্য করে এমন অ্যাপ্লিকেশনগুলিকে অনুমতি ঘোষণা করতে Declarations API ব্যবহার করতে হবে।

প্রয়োজনীয়তাবিবরণ
Android App Bundleঅপ্টিমাইজড বিতরণের জন্য AAB বিন্যাস
Data Safetyব্যক্তিগত ডেটা সংগ্রহ এবং প্রক্রিয়াকরণ সম্পর্কে ফর্ম
Target SDKঅ্যাপ্লিকেশনটিকে সর্বশেষ Android API স্তর লক্ষ্য করতে হবে
বিষয়বস্তু রেটিংবয়স রেটিং প্রশ্নাবলী
স্টোর তালিকানাম, আইকন, স্ক্রিনশট, বিবরণ

প্রায়শই জিজ্ঞাসিত প্রশ্ন

Android উন্নয়নের জন্য কোন ভাষা সবচেয়ে ভাল?

Kotlin — Google-এর Android-এর জন্য অফিসিয়ালি প্রস্তাবিত ভাষা। Java লিগ্যাসি প্রকল্পের জন্যও সমর্থিত। Kotlin নাল সুরক্ষা, করুটিন এবং এক্সটেনশন ফাংশন প্রদান করে, Java-এর তুলনায় কোডের পরিমাণ 30-40% হ্রাস করে।

কী বেছে নেবেন: Jetpack Compose নাকি XML Layouts?

Jetpack Compose তার ঘোষণামূলক সিনট্যাক্স এবং স্বয়ংক্রিয় পুনর্গঠন অপ্টিমাইজেশনের কারণে সমস্ত নতুন প্রকল্পের জন্য সুপারিশ করা হয়। XML Layouts লিগ্যাসি প্রকল্প এবং যেসব ক্ষেত্রে Canvas বা SurfaceView-এর সূক্ষ্ম কাস্টমাইজেশন প্রয়োজন সেসব ক্ষেত্রে থাকে।

Google Play-তে প্রকাশ করতে কত খরচ হয়?

Google Play ডেভেলপার রেজিস্ট্রেশনের খরচ $25 এককালীন। স্টোর কমিশন প্রথম $1 মিলিয়ন রাজস্বের জন্য 15%, তারপর 30%। সাবস্ক্রিপশনের জন্য, কমিশন প্রথম দিন থেকে 15%। Apple Developer Program-এর মতো কোনো বার্ষিক ফি নেই।

Android Jetpack কী?

Android Jetpack হল অফিসিয়াল SDK-তে অন্তর্ভুক্ত Google লাইব্রেরির একটি সেট: Navigation, Room (কম্পাইল-টাইম কোয়েরি চেক সহ SQLite ORM), WorkManager (নিশ্চিত ব্যাকগ্রাউন্ড টাস্ক), ViewModel (অবস্থা ব্যবস্থাপনা), LiveData এবং StateFlow প্রতিক্রিয়াশীলতার জন্য।

Android অ্যাপ্লিকেশনের জন্য ন্যূনতম প্রয়োজনীয়তাগুলি কী কী?

ন্যূনতম সমর্থিত সংস্করণ নতুন প্রকল্পের জন্য API 24 (Android 7.0)। AndroidManifest.xml অ্যাপ্লিকেশন উপাদান এবং অনুমতি বর্ণনা করে। APK/AAB-তে keystore দিয়ে সই করা হয়। Target SDK-কে প্রকাশের সময় সর্বশেষ API স্তরের সাথে মেলে।

সারসংক্ষেপ

  • Android — Linux কার্নেলের উপর একটি উন্মুক্ত মোবাইল OS যার বৈশ্বিক বাজার অংশীদারিত্ব 72% এবং প্রস্তুতকারক কাস্টমাইজেশন বিকল্প
  • Kotlin — null-safety, করুটিন এবং 100% Java সামঞ্জস্য সহ প্রাথমিক Android উন্নয়ন ভাষা
  • Android আর্কিটেকচার চারটি স্তরের উপর নির্মিত: Linux কার্নেল, HAL, Android Runtime, Application Framework
  • Activity, Service, BroadcastReceiver, ContentProvider — ম্যানিফেস্টে নিবন্ধিত চারটি উপাদান
  • Jetpack Compose — স্বয়ংক্রিয় পুনর্গঠন সহ Google-এর প্রস্তাবিত ঘোষণামূলক UI ফ্রেমওয়ার্ক
  • Google Play — এককালীন $25 পেমেন্ট, AAB বিন্যাস, বাধ্যতামূলক Data Safety এবং গোপনীয়তা নীতি
  • WorkManager — নির্বাহের নিশ্চয়তা এবং সীমাবদ্ধতা সহ ব্যাকগ্রাউন্ড কাজের জন্য প্রস্তাবিত API

আমরা একটি মোবাইল অ্যাপ্লিকেশন টার্নকি তৈরি করব

IT Sectr 2017 সাল থেকে স্টার্টআপ এবং ব্যবসার জন্য iOS এবং Android অ্যাপ্লিকেশন তৈরি করে। আমরা আপনাকে পরামর্শ দেব এবং সেরা সমাধান প্রস্তাব করব।

প্রকল্প নিয়ে আলোচনা করুন

আরও পড়ুন