এন্ড্রয়েড পাইথন প্রোগ্রামিং পাইথন প্রোগ্রামিং পিএইচপি এসকিউএল জেকুয়েরি এইচটিএমএল সিএসএস
লগইন
 

অ্যান্ড্রয়েড - অ্যাপ্লিকেশন কম্পোনেন্ট



অ্যাপ্লিকেশনের  কম্পোনেন্ট সমূহ  একটি অ্যান্ড্রয়েড অ্যাপ্লিকেশনের প্রয়োজনীয় বিল্ডিং ব্লক। এই উপাদানগুলি অ্যাপ্লিকেশন ম্যানিফেস্ট ফাইল AndroidManifest.xml কর্তৃক আলগাভাবে  যুক্ত থাকে।   AndroidManifest.xml  অ্যাপ্লিকেশনে ব্যবহৃত  প্রতিটি উপাদান এবং তারা কীভাবে ইন্টারঅ্যাক্ট করে তা বর্ণনা করে।



নিম্নের  চারটি উপাদান  অ্যান্ড্রয়েড অ্যাপ্লিকেশনে  প্রধান উপাদান হিসেবে ব্যবহৃত হয় -

উপাদান

বিবরণ

এক্টিভিটি

ইউআইকে নির্দেশ করে  এবং স্মার্ট ফোনের স্ক্রিনের সাথে ইউজারের   ইন্টারঅ্যাকশন হ্যান্ডেল করে।

সার্ভিসেস

একটি অ্যাপ্লিকেশনের সাথে সম্পর্কিত ব্যাকগ্রাউন্ড প্রসেসিং হ্যান্ডেল করে।

ব্রডকাস্ট রিসিভার

অ্যান্ড্রয়েড ওএস এবং অ্যাপ্লিকেশনের মধ্যে যোগাযোগ হ্যান্ডেল করে।

কন্টেন্ট প্রোভাইডার

ডেটা  এবং ডাটাবেস ম্যানেজমেন্ট বিষয় হ্যান্ডেল করে।



এক্টিভিটিস (Activities)

এক্টিভিটি দ্বারা  ইউজার ইন্টারফেস সহ একটি একক স্ক্রিনকে বুঝায়, সংক্ষেপে  স্ক্রিনে যাকিছু সংঘটিত হয় তাই এক একটি এক্টিভিটি। 

উদাহরণস্বরূপ, একটি  ইমেল অ্যাপ্লিকেশনে  একাধিক একটিভিটি থাকতে পারে যেমন- নতুন ইমেলের তালিকা দেখার জন্য একটি একটিভিটি , ইমেল রচনা করার জন্য একটি একটিভিটি  এবং ইমেল পড়ার জন্য অন্য একটি একটিভিটি ।  

তাই যদি কোন অ্যাপ্লিকেশনে  একাধিক এক্টিভিটি  থাকে, তাহলে  অ্যাপ্লিকেশন চালু হওয়ার  সময়  এদের মধ্য থেকে একটি একটিভিটিকে নির্ধারণ করে দিতে হয় যেন অ্যাপ্লিকেশন চালু হওয়া মাত্র এই একটিভিটি স্ক্রিনে প্রদর্শিত হয়। 

Activity কে Activity ক্লাসের সাবক্লাস হিসাবে প্রয়োগ করা হয় -
 public class MainActivity extends Activity {
} 


সার্ভিসেস (Services)

সার্ভিস এমন একটি উপাদান(component) যা দীর্ঘ সময় ধরে চলমান ক্রিয়াকলাপ সম্পাদনের জন্য ব্যাকগ্রাউন্ডে চলে। উদাহরণস্বরূপঃ আপনি মিউজিক প্লেয়ারের মাধ্যমে গান শুনছেন। গান শুনতে শুনতে আপানর ইচ্ছা হলো ফেসবুক ব্রাউজ করবেন। এই মুহূর্তে আপনি মিউজিক প্লেয়ারকে বন্ধ না করে ব্যাকগ্রাউন্ডে রেখে গানও শুনছেন সাথে সাথে ফেসবুকও ব্রাউজ করছেন।এই কাজটিই মূলত সম্পাদিত হয় সার্ভিসের মাধ্যমে। Service কে Service ক্লাসের সাবক্লাস হিসাবে প্রয়োগ করা হয় -

  public class MyService extends Service {

} 


ব্রডকাস্ট রিসিভার (Broadcast Receiver)

ব্রডকাস্ট রিসিভার সাধারণত  অন্য অ্যাপ্লিকেশন বা সিস্টেম থেকে সম্প্রচারিত  বার্তায় সাড়া দেয়। 

উদাহরণস্বরূপঃ  একটি অ্যাপ্লিকেশন অন্যান্য অ্যাপ্লিকেশনের জন্য   সম্প্রচারের সূচনা করতে পারে  তাদেরকে এটি জানাতে যে ডিভাইসে কিছু ডেটা ডাউনলোড করা হয়েছে এবং তাদের ব্যবহারের জন্য এটি এখন সহজলভ্য।

Broadcast receiver কে  BroadcastReceiver  ক্লাসের  সাবক্লাস হিসাবে প্রয়োগ করা হয় এবং এতে প্রতিটি বার্তা একটি ইনটেন্ট অবজেক্ট হিসাবে ব্রডকাস্টার-

  public class MyReceiver  extends  BroadcastReceiver {

   public void onReceive(context,intent){}

}


কন্টেন্ট প্রোভাইডার (Content Provider)

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

Content provider কে ContentProvider ক্লাসের সাবক্লাস হিসাবে প্রয়োগ করা হয়-

  public class MyContentProvider extends  ContentProvider {

   public void onCreate(){}

} 


অতিরিক্ত উপাদান

উপরোল্লিখিত সত্তা, তাদের যুক্তি এবং তাদের মধ্যে সংযোগ সৃষ্টিতে কিছু অতিরিক্ত উপাদান ব্যবহৃত হয়।  এই উপাদানগুলি হল -

উপাদান

বিবরণ

ফ্রাগমেন্ট

কোনও একটিভিতে ইউজার  ইন্টারফেসের একটি অংশকে নির্দেশ করে।

ভিউ

ইউআই উপাদানকে নির্দেশ করে। যেমন - বাটন, সুইচ,   ফর্ম লিস্ট ইত্যাদি। 

লে-আউট

স্ক্রিন ফর্ম্যাট এবং ভিউ এর  উপস্থিতি নিয়ন্ত্রণ করে।

ইন্টেন্ট

বার্তা  সংযোগ উপাদান।

রিসোর্স

বাহ্যিক উপাদান। যেমন স্ট্রিং, ধ্রুবক এবং অঙ্কনযোগ্য ছবি।

ম্যানিফেস্ট

অ্যাপ্লিকেশনের  কনফিগারেশন ফাইল।