অ্যান্ড্রয়েড প্ল্যাটফর্ম শব্দকোষ

অ্যান্ড্রয়েড ওপেন সোর্স প্রজেক্ট (AOSP) এর প্রাথমিক পরিভাষা শিখতে নীচের তালিকাটি দেখুন। মূল পদগুলির সংজ্ঞার জন্য এখানে অন্যান্য উত্স রয়েছে:

আরও অন্তর্ভুক্ত ইকোসিস্টেমের জন্য ব্যবহার এবং এড়ানোর জন্য পরিভাষার উদাহরণের জন্য কোডিং দেখুন।

অ্যাপস

.apk ফাইল
অ্যান্ড্রয়েড অ্যাপ্লিকেশন প্যাকেজ ফাইল। প্রতিটি অ্যান্ড্রয়েড অ্যাপ্লিকেশন একটি একক ফাইলে সংকলিত এবং প্যাকেজ করা হয় যাতে অ্যাপ্লিকেশনটির সমস্ত কোড (.dex ফাইল), সংস্থান, সম্পদ এবং ম্যানিফেস্ট ফাইল অন্তর্ভুক্ত থাকে। অ্যাপ্লিকেশন প্যাকেজ ফাইলের যেকোনো নাম থাকতে পারে তবে অবশ্যই .apk এক্সটেনশন ব্যবহার করতে হবে। যেমন: myExampleAppname.apk । সুবিধার জন্য, একটি অ্যাপ্লিকেশন প্যাকেজ ফাইল প্রায়ই একটি ".apk" হিসাবে উল্লেখ করা হয়।

সম্পর্কিত: আবেদন

কর্ম
এমন কিছুর বিবরণ যা একজন ইন্টেন্ট প্রেরক করতে চান। একটি ক্রিয়া হল একটি স্ট্রিং মান যা একটি উদ্দেশ্যকে বরাদ্দ করা হয়। অ্যাকশন স্ট্রিংগুলি Android বা তৃতীয় পক্ষের বিকাশকারী দ্বারা সংজ্ঞায়িত করা যেতে পারে। উদাহরণস্বরূপ, একটি ওয়েব URL এর জন্য android.intent.action.VIEW, অথবা ফোন ভাইব্রেট করার জন্য একটি কাস্টম অ্যাপ্লিকেশনের জন্য com.example.rumbler.SHAKE_PHONE৷

সম্পর্কিত: অভিপ্রায়

কার্যকলাপ
Activity ক্লাস থেকে প্রাপ্ত জাভা কোড সমর্থিত একটি অ্যাপ্লিকেশনে একটি একক স্ক্রীন। সাধারণত, একটি ক্রিয়াকলাপ দৃশ্যত একটি পূর্ণ স্ক্রীন উইন্ডো দ্বারা উপস্থাপন করা হয় যা UI ইভেন্টগুলি গ্রহণ এবং পরিচালনা করতে পারে এবং জটিল কাজগুলি সম্পাদন করতে পারে, কারণ উইন্ডোটি এটির উইন্ডো রেন্ডার করতে ব্যবহার করে। যদিও একটি অ্যাক্টিভিটি সাধারণত পূর্ণ স্ক্রীনে থাকে, তবে এটি ভাসমান বা স্বচ্ছও হতে পারে।
আবেদন
একটি উপাদানের দৃষ্টিকোণ থেকে, একটি Android অ্যাপ্লিকেশন এক বা একাধিক কার্যকলাপ, পরিষেবা, শ্রোতা এবং অভিপ্রায় রিসিভার নিয়ে গঠিত। একটি উৎস ফাইলের দৃষ্টিকোণ থেকে, একটি অ্যান্ড্রয়েড অ্যাপ্লিকেশন কোড, সম্পদ, সম্পদ এবং একটি একক ম্যানিফেস্ট নিয়ে গঠিত। সংকলনের সময়, এই ফাইলগুলিকে একটি একক ফাইলে প্যাকেজ করা হয় যাকে বলা হয় অ্যাপ্লিকেশন প্যাকেজ ফাইল (.apk)।

সম্পর্কিত: .apk , কার্যকলাপ

সম্প্রচার গ্রহনকারী যন্ত্র
একটি অ্যাপ্লিকেশন ক্লাস যা সম্প্রচারিত ইন্টেন্টের জন্য শোনে, একটি একক লক্ষ্য অ্যাপ্লিকেশন/ক্রিয়াকলাপে পাঠানোর পরিবর্তে। সিস্টেমটি সমস্ত আগ্রহী সম্প্রচার রিসিভারের কাছে একটি সম্প্রচারের অভিপ্রায় প্রদান করে, যা অভিপ্রায়কে ক্রমানুসারে পরিচালনা করে।

সম্পর্কিত: অভিপ্রায় , অভিপ্রায় ফিল্টার

কন্টেন্ট প্রদানকারী
একটি ডেটা-বিমূর্তকরণ স্তর যা আপনি নিরাপদে আপনার অ্যাপ্লিকেশনের ডেটা অন্যান্য অ্যাপ্লিকেশনের কাছে প্রকাশ করতে ব্যবহার করতে পারেন৷ একটি বিষয়বস্তু প্রদানকারী ContentProvider ক্লাসে তৈরি করা হয়, যা একটি নির্দিষ্ট বিন্যাসে ডেটা ফেরত দেওয়ার জন্য একটি নির্দিষ্ট বিন্যাসের বিষয়বস্তু ক্যোয়ারী স্ট্রিং পরিচালনা করে। আরও তথ্যের জন্য বিষয়বস্তু প্রদানকারী বিষয় দেখুন।

সম্পর্কিত: অ্যান্ড্রয়েডে ইউআরআই ব্যবহার

ডায়ালগ
একটি ভাসমান জানালা যা একটি লাইটওয়েট ফর্ম হিসাবে কাজ করে। একটি ডায়ালগে শুধুমাত্র বোতাম নিয়ন্ত্রণ থাকতে পারে এবং এটি একটি সাধারণ ক্রিয়া (যেমন বোতাম পছন্দ) সঞ্চালনের উদ্দেশ্যে এবং সম্ভবত একটি মান ফেরত দিতে পারে৷ একটি ডায়ালগ ইতিহাসের স্ট্যাকের মধ্যে টিকে থাকা, জটিল বিন্যাস ধারণ করা বা জটিল ক্রিয়া সম্পাদনের উদ্দেশ্যে নয়। অ্যান্ড্রয়েড ঐচ্ছিক বোতাম সহ আপনার জন্য একটি ডিফল্ট সাধারণ ডায়ালগ প্রদান করে, যদিও আপনি নিজের ডায়ালগ লেআউটটি সংজ্ঞায়িত করতে পারেন। ডায়ালগগুলির জন্য বেস ক্লাস হল Dialog

সম্পর্কিত: কার্যকলাপ

অভিপ্রায়
একটি বার্তা অবজেক্ট যা আপনি অ্যাসিঙ্ক্রোনাসভাবে অন্যান্য অ্যাপ্লিকেশন/ক্রিয়াকলাপগুলির সাথে লঞ্চ বা যোগাযোগ করতে ব্যবহার করতে পারেন। একটি অভিপ্রায় বস্তু হল Intent একটি উদাহরণ। এটিতে বেশ কয়েকটি মানদণ্ডের ক্ষেত্র রয়েছে যা আপনি সরবরাহ করতে পারেন, কোন অ্যাপ্লিকেশন/ক্রিয়াকলাপ অভিপ্রায় গ্রহণ করে এবং অভিপ্রায় পরিচালনা করার সময় প্রাপক কী করে তা নির্ধারণ করতে। উপলব্ধ মানদণ্ডের মধ্যে রয়েছে পছন্দসই ক্রিয়া, একটি বিভাগ, একটি ডেটা স্ট্রিং, ডেটার MIME প্রকার, একটি হ্যান্ডলিং ক্লাস এবং অন্যান্য। একটি অ্যাপ্লিকেশন সরাসরি অন্য অ্যাপ্লিকেশন/ক্রিয়াকলাপে পাঠানোর পরিবর্তে Android সিস্টেমে একটি ইন্টেন্ট পাঠায়। অ্যাপ্লিকেশনটি একটি একক লক্ষ্য অ্যাপ্লিকেশনে অভিপ্রায় পাঠাতে পারে বা এটি একটি সম্প্রচার হিসাবে পাঠাতে পারে, যা পর্যায়ক্রমে একাধিক অ্যাপ্লিকেশন দ্বারা পরিচালনা করা যেতে পারে। অন্যান্য অ্যাপ্লিকেশানগুলির দ্বারা সংজ্ঞায়িত অভিপ্রায় এবং অভিপ্রায় ফিল্টারগুলিতে সরবরাহ করা মানদণ্ডের ভিত্তিতে প্রতিটি ইন্টেন্টের জন্য সেরা-উপলব্ধ রিসিভারের সমাধান করার জন্য Android সিস্টেম দায়ী৷ আরও তথ্যের জন্য, ইন্টেন্টস এবং ইনটেন্ট ফিল্টার দেখুন।

সম্পর্কিত: অভিপ্রায় ফিল্টার , ব্রডকাস্ট রিসিভার

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

সম্পর্কিত: অভিপ্রায় , ব্রডকাস্ট রিসিভার

সম্পদ
ননপ্রোগ্রাম্যাটিক অ্যাপ্লিকেশন উপাদান যা কম্পাইল করা অ্যাপ্লিকেশন কোডের বাইরের, কিন্তু একটি সুপরিচিত রেফারেন্স বিন্যাস ব্যবহার করে অ্যাপ্লিকেশন কোড থেকে লোড করা যেতে পারে। অ্যান্ড্রয়েড বিভিন্ন ধরনের রিসোর্সকে সমর্থন করে, কিন্তু একটি সাধারণ অ্যাপ্লিকেশনের রিসোর্সে UI স্ট্রিং, UI লেআউট উপাদান, গ্রাফিক্স বা অন্যান্য মিডিয়া ফাইল ইত্যাদি থাকে। একটি অ্যাপ্লিকেশন দক্ষতার সাথে স্থানীয়করণ এবং বিভিন্ন ডিভাইস প্রোফাইল এবং রাজ্যগুলিকে সমর্থন করার জন্য সম্পদ ব্যবহার করে। উদাহরণস্বরূপ, একটি অ্যাপ্লিকেশন প্রতিটি সমর্থিত স্থানীয় বা ডিভাইস প্রকারের জন্য সম্পদের একটি পৃথক সেট অন্তর্ভুক্ত করবে এবং এতে লেআউট সংস্থানগুলি অন্তর্ভুক্ত থাকতে পারে যা বর্তমান স্ক্রীন অভিযোজন (ল্যান্ডস্কেপ বা প্রতিকৃতি) এর জন্য নির্দিষ্ট। সম্পদ সম্পর্কে আরও তথ্যের জন্য, সম্পদ এবং সম্পদ দেখুন। একটি অ্যাপ্লিকেশনের সংস্থানগুলি সর্বদা প্রকল্পের res/* সাবফোল্ডারগুলিতে সংরক্ষণ করা হয়।
সেবা
ক্লাস Service একটি বস্তু যা ব্যাকগ্রাউন্ডে চলে (কোনও UI উপস্থিতি ছাড়াই) বিভিন্ন ক্রমাগত ক্রিয়া সম্পাদন করতে, যেমন সঙ্গীত বাজানো বা নেটওয়ার্ক কার্যকলাপ পর্যবেক্ষণ করা।

সম্পর্কিত: কার্যকলাপ

অ্যান্ড্রয়েডে ইউআরআই
একটি বিষয়বস্তু প্রদানকারীর (যেমন পরিচিতিগুলির একটি তালিকা পুনরুদ্ধার করা) এবং একটি উদ্দেশ্য (যেমন একটি ব্রাউজারে একটি ওয়েব পৃষ্ঠা খোলার মতো) ক্রিয়াকলাপের জন্য অনুরোধ করার জন্য Android URI (ইউনিফর্ম রিসোর্স আইডেন্টিফায়ার) স্ট্রিং ব্যবহার করে। ইউআরআই স্কিম এবং বিন্যাসটি ব্যবহারের ধরন অনুসারে বিশেষায়িত, এবং একটি অ্যাপ্লিকেশন নির্দিষ্ট ইউআরআই স্কিম এবং স্ট্রিংগুলিকে যে কোনও উপায়ে পরিচালনা করতে পারে। কিছু URI স্কিম সিস্টেমের উপাদান দ্বারা সংরক্ষিত। উদাহরণস্বরূপ, একটি বিষয়বস্তু প্রদানকারীর কাছ থেকে ডেটার জন্য অনুরোধের জন্য অবশ্যই content:// ব্যবহার করতে হবে। একটি অভিপ্রায়ে, একটি http:// স্কিম ব্যবহার করে একটি URI ব্রাউজার দ্বারা পরিচালনা করা হবে।

নির্মাণ করুন

adb
অ্যান্ড্রয়েড ডিবাগ ব্রিজ, একটি কমান্ড-লাইন ডিবাগিং অ্যাপ্লিকেশন যা SDK-এর সাথে অন্তর্ভুক্ত। এটি ডিভাইসটি ব্রাউজ করার জন্য সরঞ্জাম সরবরাহ করে, ডিভাইসে সরঞ্জামগুলি অনুলিপি করে এবং ডিবাগিংয়ের জন্য পোর্ট ফরওয়ার্ড করে। আপনি যদি অ্যান্ড্রয়েড স্টুডিওতে বিকাশ করছেন, তাহলে অ্যাডবি আপনার উন্নয়ন পরিবেশে একত্রিত হয়। আরও তথ্যের জন্য অ্যান্ড্রয়েড ডিবাগ ব্রিজ দেখুন।
অ্যান্ড্রয়েড প্রকল্প
একটি Android Gerrit হোস্টে একটি Git সংগ্রহস্থল। আরও তথ্যের জন্য উত্স নিয়ন্ত্রণ সরঞ্জাম > Gerrit দেখুন।
ফিঙ্গারপ্রিন্ট তৈরি করুন
বিল্ড ফিঙ্গারপ্রিন্ট হল একটি অনন্য, মানব-পাঠযোগ্য স্ট্রিং যাতে প্রতিটি বিল্ডে জারি করা প্রস্তুতকারকের তথ্য থাকে। আরও তথ্যের জন্য বিল্ড ফিঙ্গারপ্রিন্ট বোঝা দেখুন।
গিট
অ্যান্ড্রয়েড দ্বারা ব্যবহৃত সোর্স কন্ট্রোল টুল যা ঐতিহাসিকভাবে একটি একক গিট রিপোজিটরিতে পরিচালিত হয়। একাধিক গিট সংগ্রহস্থলের জন্য রেপোর সাথে একত্রে ব্যবহৃত হয়। আরও তথ্যের জন্য উত্স নিয়ন্ত্রণ সরঞ্জাম > গিট দেখুন।
গিট শাখা - ক্যানোনিকাল
cs.android.com/android/platform/superproject/+/android-11.0.0_r1- এ পাওয়া android-11.0.0_r1 এর মতো প্রতিটি গিট রিপোজিটরির জন্য আলাদা সংস্করণ। আরও তথ্যের জন্য Git Branching - সংক্ষেপে শাখা দেখুন।
গিট শাখা - স্থানীয়
কোড পরিবর্তন করার জন্য বর্তমান রেপো ক্লায়েন্টের একটি অস্থায়ী শাখা, repo start branch-name . আদেশ উন্নয়নের একটি সক্রিয় লাইন। একটি শাখার সবচেয়ে সাম্প্রতিক প্রতিশ্রুতিটিকে সেই শাখার টিপ হিসাবে উল্লেখ করা হয়।
গিট সংগ্রহস্থল
কখনও কখনও একটি প্রকল্প হিসাবে উল্লেখ করা হয়, এটি কোডবেসের একটি অংশ যা একটি নির্দিষ্ট উপাদান বা ডিভাইসের প্রকারের প্রতিনিধিত্ব করে, যেমন frameworks/base বা platform/packages/apps/Car/Media
ম্যানিফেস্ট ফাইল
একটি XML ফাইল যা প্রতি শাখায় গিট রিপোজিটরিগুলির একটি গ্রুপিং, সেই রিপোজিটরিগুলি পরীক্ষা করার জন্য গিট রিভিশন এবং একটি ফাইল সিস্টেমে তাদের লেআউট বর্ণনা করে। এই XML ফাইলটি, সাধারণত default.xml নামে, একটি রেপো শাখার সাথে যুক্ত থাকে এবং আপনি যখন রেপো শাখা শুরু এবং সিঙ্ক করেন তখন গিট রিপোজিটরি এবং গিট শাখা চেক আউট করে তা বর্ণনা করে। এই ফাইলটি বিভিন্ন গিট রিপোজিটরিগুলিকে সংজ্ঞায়িত করে যা রেপো টুলটিকে একটি পণ্য তৈরি করার জন্য একটি রেপো ক্লায়েন্ট চেকআউটে আনতে হবে (যেমন Android Automotive OS)। android.googlesource.com/platform/manifest/+refs- এ সমস্ত ম্যানিফেস্ট দেখুন। android.googlesource.com/platform/manifest/+/refs/heads/main/default.xml- এ Android প্ল্যাটফর্ম (AOSP) ফাইলগুলি টানতে AndroidManifest ফাইলগুলিতে অন্তর্ভুক্ত ডিফল্ট ম্যানিফেস্ট দেখুন। অ্যাপের তথ্যের জন্য AndroidManifest.xml ফাইল এবং প্ল্যাটফর্ম ডেভেলপমেন্টের জন্য রেপো ম্যানিফেস্ট ফর্ম্যাট দেখুন।
ওভার-দ্য-এয়ার (OTA) আপডেট
ক্ষেত্রের অ্যান্ড্রয়েড ডিভাইসগুলি সিস্টেম, অ্যাপ্লিকেশন সফ্টওয়্যার এবং সময় অঞ্চলের নিয়মগুলিতে ওভার-দ্য-এয়ার (OTA) আপডেটগুলি গ্রহণ এবং ইনস্টল করতে পারে৷ আরও তথ্যের জন্য OTA আপডেট দেখুন।
রেপো
একাধিক গিট রিপোজিটরিতে সহজ ক্রিয়াকলাপের অনুমতি দেওয়ার জন্য গিট এর চারপাশে একটি মোড়ক। এটি একটি একক চেকআউট বা কোডবেস হিসাবে অনেক গিট সংগ্রহস্থলকে একত্রিত করে এবং পরিচালনা করে। আরও তথ্যের জন্য উত্স নিয়ন্ত্রণ সরঞ্জাম > রেপো দেখুন।
রেপো শাখা
একটি AndroidManifest ফাইলে ক্যাপচার করা গিট রিপোজিটরির একটি সংগ্রহ যা android11-gsi বা aosp-android-games-sdk এর মতো Android কোডবেসের একটি সংস্করণ (বিল্ড) প্রতিনিধিত্ব করে, repo init এবং repo sync কমান্ডের মাধ্যমে ডাউনলোড করা হয়। সমস্ত ম্যানিফেস্ট ফাইলের লিঙ্কগুলির জন্য ম্যানিফেস্ট ফাইলের বিবরণ দেখুন এবং তাদের বিল্ডগুলি অনুসন্ধান করতে https://cs.android.com/ ব্যবহার করুন৷
uprev
সাধারণভাবে, uprev একটি বৃহত্তর প্রকল্পের একটি উপাদান উপপ্রজেক্টকে একটি নতুন সংস্করণে আপডেট করে। একটি uprev পরবর্তী বর্ধিত সংস্করণ বা সর্বশেষ উপলব্ধ সংস্করণে একটি সংশোধন স্তর পরিবর্তন করে। HIDL প্যাকেজের ক্ষেত্রে, প্যাকেজ-স্তরের ব্যাকওয়ার্ড-কম্প্যাটিবল এক্সটেনসিবিলিটি বজায় রাখার জন্য, একটি মাইনর-সংস্করণ uprev নতুন প্যাকেজটিকে একটি উচ্চতর মাইনর সংস্করণে আপডেট করে এবং পুরানো প্যাকেজের মতো একই নাম এবং প্রধান সংস্করণ বজায় রাখে। বুটলোডার কনফিগারেশনের ক্ষেত্রে, একটি uprev বুট হেডার সংস্করণ সমর্থন সর্বশেষ সংস্করণে আপডেট করে।

গ্রাফিক্স

ক্যানভাস
একটি অঙ্কন পৃষ্ঠ যা একটি বিটম্যাপ বা একটি সারফেস বস্তুর বিরুদ্ধে প্রকৃত বিটগুলির সংমিশ্রণ পরিচালনা করে। এটিতে বিটম্যাপ, লাইন, বৃত্ত, আয়তক্ষেত্র, টেক্সট ইত্যাদির স্ট্যান্ডার্ড কম্পিউটার অঙ্কনের পদ্ধতি রয়েছে এবং এটি একটি বিটম্যাপ বা সারফেসের সাথে আবদ্ধ। ক্যানভাস হল পর্দায় 2D বস্তু আঁকার সবচেয়ে সহজ, সহজ উপায়। বেস ক্লাস হল Canvas

সম্পর্কিত: অঙ্কনযোগ্য , ওপেনজিএল ইএস , সারফেস

অঙ্কনযোগ্য
একটি কম্পাইল করা ভিজ্যুয়াল রিসোর্স যা ব্যাকগ্রাউন্ড, শিরোনাম বা স্ক্রিনের অন্য অংশ হিসেবে ব্যবহার করা যেতে পারে। একটি অঙ্কনযোগ্য সাধারণত অন্য UI উপাদানে লোড করা হয়, উদাহরণস্বরূপ একটি পটভূমি চিত্র হিসাবে। একটি অঙ্কনযোগ্য ইভেন্টগুলি গ্রহণ করতে সক্ষম হয় না, তবে অ্যানিমেশন অবজেক্ট বা ইমেজ লাইব্রেরির মতো সাবক্লাসগুলি সক্ষম করতে "স্টেট" এবং শিডিউলিংয়ের মতো অন্যান্য বৈশিষ্ট্যগুলি বরাদ্দ করে। অঙ্কনযোগ্য রিসোর্স ফাইলগুলি থেকে অনেকগুলি অঙ্কনযোগ্য বস্তু লোড করা হয় — xml বা বিটম্যাপ ফাইল যা চিত্রটি বর্ণনা করে। অঙ্কনযোগ্য সংস্থানগুলি android.graphics.drawable এর সাবক্লাসগুলিতে সংকলিত হয়। অঙ্কনযোগ্য এবং অন্যান্য সংস্থান সম্পর্কে আরও তথ্যের জন্য, সম্পদ দেখুন।

সম্পর্কিত: সম্পদ , ক্যানভাস

লেআউট রিসোর্স
একটি XML ফাইল যা একটি অ্যাক্টিভিটি স্ক্রিনের লেআউট বর্ণনা করে।

সম্পর্কিত: সম্পদ

নাইন-প্যাচ / 9-প্যাচ / নাইনপ্যাচ চিত্র
একটি রিসাইজযোগ্য বিটম্যাপ রিসোর্স যা ব্যাকগ্রাউন্ড বা ডিভাইসে অন্যান্য ছবির জন্য ব্যবহার করা যেতে পারে। আরও তথ্যের জন্য নাইন-প্যাচ স্ট্রেচেবল ইমেজ দেখুন।

সম্পর্কিত: সম্পদ

OpenGL ES
অ্যান্ড্রয়েড হার্ডওয়্যার-অ্যাক্সিলারেটেড 3D রেন্ডারিংয়ের জন্য OpenGL ES লাইব্রেরি সরবরাহ করে। 2D রেন্ডারিংয়ের জন্য, ক্যানভাস হল সহজ বিকল্প৷ ব্যবহারের সহজতার জন্য OpenGL ES অ্যান্ড্রয়েড নেটিভ ডেভেলপমেন্ট কিট (NDK) এ উপলব্ধ৷ android.opengl এবং javax.microedition.khronos.opengles প্যাকেজগুলি OpenGL ES কার্যকারিতা প্রকাশ করে৷

সম্পর্কিত: ক্যানভাস , সারফেস

পৃষ্ঠতল
Surface ধরণের একটি বস্তু যা মেমরির একটি ব্লককে উপস্থাপন করে যা স্ক্রিনে সংমিশ্রিত হয়। একটি সারফেস অঙ্কনের জন্য একটি ক্যানভাস বস্তু ধারণ করে এবং স্তরগুলি আঁকতে এবং পৃষ্ঠের আকার পরিবর্তন করার জন্য বিভিন্ন সহায়ক পদ্ধতি প্রদান করে। আপনি সরাসরি এই ক্লাস ব্যবহার করা উচিত নয়; পরিবর্তে SurfaceView ব্যবহার করুন।

সম্পর্কিত: ক্যানভাস

সারফেসভিউ
একটি ভিউ অবজেক্ট যা অঙ্কনের জন্য একটি সারফেসকে মোড়ানো এবং গতিশীলভাবে এর আকার এবং বিন্যাস নির্দিষ্ট করার পদ্ধতিগুলি প্রকাশ করে। একটি সারফেসভিউ সংস্থান-নিবিড় ক্রিয়াকলাপগুলির জন্য (যেমন গেমস বা ক্যামেরা প্রিভিউ) জন্য UI থ্রেড থেকে স্বাধীনভাবে আঁকার একটি উপায় সরবরাহ করে তবে এটি ফলাফল হিসাবে অতিরিক্ত মেমরি ব্যবহার করে। SurfaceView ক্যানভাস এবং OpenGL ES গ্রাফিক্স উভয় সমর্থন করে। বেস ক্লাস হল SurfaceView

সম্পর্কিত: পৃষ্ঠ

থিম
বিভিন্ন ডিফল্ট ডিসপ্লে সেটিংস সংজ্ঞায়িত করতে বৈশিষ্ট্যগুলির একটি সেট (টেক্সট আকার, পটভূমির রঙ এবং তাই) একসাথে বান্ডিল। অ্যান্ড্রয়েড কিছু স্ট্যান্ডার্ড থিম প্রদান করে, R.style এ তালিকাভুক্ত ("Theme_" দিয়ে শুরু)।
দেখুন
একটি বস্তু যা স্ক্রিনে একটি আয়তক্ষেত্রাকার এলাকায় আঁকে এবং ক্লিক, কীস্ট্রোক এবং অন্যান্য মিথস্ক্রিয়া ইভেন্টগুলি পরিচালনা করে। একটি ভিউ হল একটি অ্যাক্টিভিটি বা ডায়ালগ স্ক্রিনের (টেক্সট বক্স, উইন্ডোজ ইত্যাদি) বেশিরভাগ লেআউট উপাদানগুলির জন্য একটি বেস ক্লাস। এটি নিজেকে আঁকতে এর মূল বস্তু ( ভিউগ্রুপ দেখুন) থেকে কল গ্রহণ করে এবং এটি কোথায় এবং কত বড় হতে চায় সে সম্পর্কে তার মূল বস্তুকে জানায় (যা অভিভাবক দ্বারা সম্মানিত হতে পারে বা নাও হতে পারে)। আরও তথ্যের জন্য, View

সম্পর্কিত: অনুক্রম দেখুন , ভিউগ্রুপ , উইজেট

অনুক্রম দেখুন
ভিউ এবং ভিউগ্রুপ অবজেক্টের একটি বিন্যাস যা একটি অ্যাপের প্রতিটি উপাদানের জন্য ইউজার ইন্টারফেসকে সংজ্ঞায়িত করে। শ্রেণিবিন্যাসের মধ্যে এক বা একাধিক শিশুর ভিউ বা ভিউ গ্রুপ রয়েছে এমন ভিউ গ্রুপ রয়েছে। আপনি Android SDK-এর সাথে সরবরাহ করা হায়ারার্কি ভিউয়ার ব্যবহার করে ডিবাগিং এবং অপ্টিমাইজেশনের জন্য একটি ভিউ হায়ারার্কির একটি ভিজ্যুয়াল উপস্থাপনা পেতে পারেন।

সম্পর্কিত: দেখুন , ভিউগ্রুপ

ভিউ গ্রুপ
একটি কন্টেইনার অবজেক্ট যা শিশুর দৃষ্টিভঙ্গির একটি সেট গ্রুপ করে। শিশুর দৃষ্টিভঙ্গি কোথায় থাকবে এবং সেগুলি কতটা বড় হতে পারে, সেইসাথে উপযুক্ত হলে প্রত্যেককে নিজেদের আঁকার জন্য আহ্বান করার জন্য ভিউ গ্রুপটি দায়বদ্ধ। কিছু ভিউ গ্রুপ অদৃশ্য এবং শুধুমাত্র লেআউটের জন্য, অন্যদের একটি অভ্যন্তরীণ UI আছে (উদাহরণস্বরূপ, একটি স্ক্রলিং তালিকা বাক্স)। ভিউ গ্রুপগুলি সবই widget প্যাকেজে রয়েছে, তবে ViewGroup প্রসারিত করুন।

সম্পর্কিত: দেখুন , অনুক্রম দেখুন

উইজেট
সম্পূর্ণরূপে বাস্তবায়িত ভিউ সাবক্লাসগুলির একটি সেট যা ফর্ম উপাদান এবং অন্যান্য UI উপাদানগুলিকে রেন্ডার করে, যেমন একটি পাঠ্য বাক্স বা পপআপ মেনু৷ যেহেতু একটি উইজেট সম্পূর্ণরূপে প্রয়োগ করা হয়েছে, এটি নিজেই পরিমাপ এবং অঙ্কন পরিচালনা করে এবং স্ক্রীন ইভেন্টগুলিতে প্রতিক্রিয়া জানায়। উইজেট সব android.widget প্যাকেজে আছে।
জানলা
একটি অ্যান্ড্রয়েড অ্যাপ্লিকেশনে, বিমূর্ত শ্রেণির Window থেকে প্রাপ্ত একটি বস্তু যা জেনেরিক উইন্ডোর উপাদানগুলিকে নির্দিষ্ট করে, যেমন চেহারা এবং অনুভূতি (শিরোনাম বার পাঠ্য, অবস্থান এবং মেনুগুলির বিষয়বস্তু ইত্যাদি)। ডায়ালগ এবং কার্যকলাপ একটি উইন্ডো রেন্ডার করতে এই শ্রেণীর একটি বাস্তবায়ন ব্যবহার করে। আপনাকে এই ক্লাসটি বাস্তবায়ন করতে হবে না বা আপনার অ্যাপ্লিকেশনে উইন্ডোজ ব্যবহার করতে হবে না।

প্ল্যাটফর্ম

অ্যান্ড্রয়েড রানটাইম (এআরটি) এবং ডালভিক
অ্যান্ড্রয়েড রানটাইম (এআরটি) হল অ্যান্ড্রয়েডে অ্যাপ্লিকেশন এবং কিছু সিস্টেম পরিষেবা দ্বারা ব্যবহৃত পরিচালিত রানটাইম। অ্যান্ড্রয়েড রানটাইম (ART) হল Android 5.0 (API লেভেল 21) এবং উচ্চতর চলমান ডিভাইসগুলির জন্য ডিফল্ট রানটাইম। ART এবং এর পূর্বসূরি Dalvik মূলত Android ওপেন সোর্স প্রকল্পের জন্য বিশেষভাবে তৈরি করা হয়েছিল। রানটাইম হিসাবে ART ডালভিক এক্সিকিউটেবল ফরম্যাট এবং ডেক্স বাইটকোড স্পেসিফিকেশন কার্যকর করে। ART এবং Dalvik হল সামঞ্জস্যপূর্ণ রানটাইম যা Dex বাইটকোড চালায়, তাই Dalvik-এর জন্য তৈরি করা অ্যাপগুলি ART-এর সাথে চলার সময় কাজ করা উচিত।
কোডলাইন
একটি কোডলাইনে একটি সফ্টওয়্যার পণ্যের প্রকাশ রয়েছে। এটি এক বা একাধিক সংগ্রহস্থল থেকে এক বা একাধিক শাখা নিয়ে গঠিত, যার সবকটিই প্রায়ই সক্রিয় বিকাশের অধীনে থাকে। কোডলাইন হল মুক্তির জন্য একত্রিতকরণ পয়েন্ট এবং লক্ষ্য। কোডলাইন সম্পর্কে আরও তথ্যের জন্য, অ্যান্ড্রয়েড সফ্টওয়্যার ম্যানেজমেন্ট দেখুন।
.dex ফাইল
কম্পাইল করা অ্যান্ড্রয়েড অ্যাপ্লিকেশন কোড ফাইল।

অ্যান্ড্রয়েড প্রোগ্রামগুলিকে .dex (ডালভিক এক্সিকিউটেবল) ফাইলে কম্পাইল করা হয়, যা ডিভাইসে একটি একক .apk ফাইলে জিপ করা হয়। জাভা প্রোগ্রামিং ভাষায় লেখা সংকলিত অ্যাপ্লিকেশনগুলিকে স্বয়ংক্রিয়ভাবে অনুবাদ করে .dex ফাইল তৈরি করা যেতে পারে।

পরীক্ষা

শিল্পকর্ম
আর্টিফ্যাক্টগুলি হল বিল্ড-সম্পর্কিত লগ যা স্থানীয় সমস্যা সমাধানকে সক্ষম করে৷ আপনার পরিবর্তন তালিকা দেখার সময় এই লগগুলি সরাসরি Gerrit থেকে অ্যাক্সেসযোগ্য। প্রি-সাবমিট স্থিতিতে স্ক্রোল করুন এবং সংশ্লিষ্ট build_error.log ফাইলটি দেখতে বা ডাউনলোড করতে লাল বিল্ড লিঙ্কে ক্লিক করুন। এছাড়াও আপনি লক্ষ্য এবং বিল্ডের জন্য ডাউনলোড (নীচের তীর) আইকনে ক্লিক করে ci.android.com/- এ কেন্দ্রীয় Android কন্টিনিউয়াস ইন্টিগ্রেশন সার্ভার থেকে এই শিল্পকর্মগুলি পেতে পারেন। আর্টিফ্যাক্টগুলি কীভাবে খুঁজে পাওয়া যায় সে সম্পর্কে আরও তথ্যের জন্য, Android কন্টিনিউয়াস ইন্টিগ্রেশন দেখুন।
সিডিডি
অ্যান্ড্রয়েড কম্প্যাটিবিলিটি ডেফিনিশন ডকুমেন্ট (CDD) আপনার ডিভাইসগুলিকে Android এর সর্বশেষ সংস্করণের সাথে সামঞ্জস্যপূর্ণ হওয়ার জন্য প্রয়োজনীয় প্রয়োজনীয়তাগুলিকে গণনা করে৷ অ্যান্ড্রয়েডের সাথে সামঞ্জস্যপূর্ণ বলে বিবেচিত হতে, ডিভাইস বাস্তবায়নকে অবশ্যই এই সামঞ্জস্যের সংজ্ঞায় উপস্থাপিত প্রয়োজনীয়তাগুলি পূরণ করতে হবে, রেফারেন্স দ্বারা অন্তর্ভুক্ত যেকোনো নথি সহ। CDD সম্পর্কে আরও তথ্যের জন্য, Android সামঞ্জস্যপূর্ণ সংজ্ঞা নথি দেখুন।
সিটিএস
কম্প্যাটিবিলিটি টেস্ট স্যুট (সিটিএস) হল এপিআই সঠিকতা এবং CDD-এ উল্লেখিত স্পেসিফিকেশন নিশ্চিত করার জন্য একটি টেস্ট স্যুট। এটি AOSP- এর মধ্যে উত্স হিসাবে এবং একটি বাইনারি হিসাবে ডাউনলোডের জন্য উপলব্ধ। আরও তথ্যের জন্য, সামঞ্জস্য পরীক্ষা স্যুট দেখুন।
CTS যাচাইকারী
কম্প্যাটিবিলিটি টেস্ট স্যুট ভেরিফায়ার (CTS ভেরিফায়ার) হল CTS-এর একটি সম্পূরক। CTS ভেরিফায়ার এপিআই এবং ফাংশনগুলির জন্য পরীক্ষা প্রদান করে যা ম্যানুয়াল ইনপুট ছাড়া একটি স্থির ডিভাইসে পরীক্ষা করা যায় না (যেমন অডিও গুণমান, অ্যাক্সিলোমিটার, ইত্যাদি)। আরও তথ্যের জন্য, CTS যাচাইকারী ব্যবহার করা দেখুন।
ডিবাগিং
ডিবাগিংয়ের জন্য অ্যান্ড্রয়েড প্ল্যাটফর্ম কোডে বৈশিষ্ট্য বা তাদের পরীক্ষায় ত্রুটি খুঁজে বের করা এবং ঠিক করা প্রয়োজন। আরও তথ্যের জন্য, নেটিভ অ্যান্ড্রয়েড প্ল্যাটফর্ম কোড ডিবাগিং দেখুন
GoogleTest (GTest)
GTest হল Google এর C++ টেস্টিং এবং মকিং ফ্রেমওয়ার্ক। GTest বাইনারিগুলি সাধারণত নিম্ন-স্তরের বিমূর্ত স্তরগুলি অ্যাক্সেস করে বা বিভিন্ন সিস্টেম পরিষেবার বিরুদ্ধে কাঁচা আইপিসি সম্পাদন করে। এই কারণে, Gtest-এর জন্য পরীক্ষার পদ্ধতি সাধারণত পরীক্ষা করা পরিষেবার সাথে শক্তভাবে মিলিত হয়। github.com/google/googletest- এ কোড এবং google.github.io/googletest- এ ডকুমেন্টেশন খুঁজুন।
ইন্সট্রুমেন্টেশন পরীক্ষা
একটি ইন্সট্রুমেন্টেশন পরীক্ষা am instrument কমান্ড দ্বারা চালু করা একটি বিশেষ পরীক্ষা কার্যকর করার পরিবেশ প্রদান করে, যেখানে লক্ষ্যযুক্ত অ্যাপ্লিকেশন প্রক্রিয়াটি পুনরায় আরম্ভ করা হয় এবং প্রাথমিক অ্যাপ্লিকেশন প্রসঙ্গের সাথে শুরু করা হয় এবং অ্যাপ্লিকেশন প্রক্রিয়া ভার্চুয়াল মেশিনের ভিতরে একটি ইন্সট্রুমেন্টেশন থ্রেড শুরু হয়। আরও তথ্যের জন্য, ইনস্ট্রুমেন্টেশন টেস্ট দেখুন।
লগক্যাট
Logcat হল একটি কমান্ড-লাইন টুল যা সিস্টেম বার্তাগুলির একটি লগ ডাম্প করে, স্ট্যাক ট্রেস সহ যখন ডিভাইসটি একটি ত্রুটি এবং Log ক্লাসের সাথে আপনার অ্যাপ থেকে লেখা বার্তাগুলি ফেলে দেয়। আরও তথ্যের জন্য, Logcat কমান্ড-লাইন টুল দেখুন।
লগিং
logcat এ একত্রিত ব্যবহৃত মানগুলির মিশ্রণের কারণে অ্যান্ড্রয়েডে লগিং করা জটিল। ব্যবহৃত প্রধান মানগুলির বিস্তারিত জানার জন্য, লগিং বোঝা দেখুন।
সংঘাত একত্রিত করুন
একটি মার্জ বিরোধ দেখা দেয় যখন একই ফাইলের দুই বা ততোধিক সংস্করণ আর Android বিল্ড সার্ভার দ্বারা স্বয়ংক্রিয়ভাবে মার্জ করা যায় না। এগুলি সাধারণত সমস্ত বিরোধপূর্ণ আপডেটগুলি সমাধান করতে ফাইলটির ম্যানুয়াল সম্পাদনা প্রয়োজন।
প্রি-সাবমিট এবং পোস্ট সাবমিট পরীক্ষা
প্রি-সাবমিট পরীক্ষাগুলি সাধারণ কার্নেলগুলিতে প্রবর্তিত হওয়া থেকে ব্যর্থতা প্রতিরোধ করতে ব্যবহৃত হয়। ফলাফল এই সময়ে সর্বজনীনভাবে উপলব্ধ নয়৷

একটি সাধারণ কার্নেল শাখায় একটি নতুন প্যাচ প্রতিশ্রুতিবদ্ধ হলে Android পোস্ট-সাবমিট পরীক্ষা করা হয়। একটি আংশিক শাখার নাম হিসাবে aosp_kernel প্রবেশ করার মাধ্যমে, আপনি উপলব্ধ ফলাফল সহ কার্নেল শাখাগুলির একটি তালিকা দেখতে পারেন। উদাহরণস্বরূপ, `android-mainline`-এর ফলাফল এখানে পাওয়া যাবে।
Tradefed
ট্রেড ফেডারেশন (সংক্ষেপে ট্রেডফেড বা টিএফ) টেস্ট জোতা একটি ক্রমাগত পরীক্ষার কাঠামো যা অ্যান্ড্রয়েড ডিভাইসে পরীক্ষা চালানোর জন্য ডিজাইন করা হয়েছে। উদাহরণস্বরূপ, CTS এবং VTS চালানোর জন্য Tradefed ব্যবহার করা হয়। আরও তথ্যের জন্য, ট্রেড ফেডারেশন ওভারভিউ দেখুন।
ভিটিএস
অ্যান্ড্রয়েড ভেন্ডর টেস্ট স্যুট (ভিটিএস) অ্যান্ড্রয়েড পরীক্ষার জন্য ব্যাপক কার্যকারিতা প্রদান করে, একটি পরীক্ষা-চালিত বিকাশ প্রক্রিয়াকে প্রচার করে এবং HAL এবং OS কার্নেল পরীক্ষাকে স্বয়ংক্রিয় করে। আরও তথ্যের জন্য, ভেন্ডর টেস্ট স্যুট (VTS) এবং পরিকাঠামো দেখুন।