অ্যান্ড্রয়েড স্টুডিও অ্যান্ড্রয়েড অ্যাপ ডেভেলপমেন্টের জন্য অফিসিয়াল ইন্টিগ্রেটেড ডেভেলপমেন্ট এনভায়রনমেন্ট (আইডিই)। IntelliJ IDEA থেকে শক্তিশালী কোড এডিটর এবং ডেভেলপার টুলের উপর ভিত্তি করে, Android স্টুডিও আরও বেশি বৈশিষ্ট্য অফার করে যা Android অ্যাপ তৈরি করার সময় আপনার উৎপাদনশীলতা বাড়ায়, যেমন:
- একটি নমনীয় গ্রেডল-ভিত্তিক বিল্ড সিস্টেম
- একটি দ্রুত এবং বৈশিষ্ট্য সমৃদ্ধ এমুলেটর
- একটি একীভূত পরিবেশ যেখানে আপনি সমস্ত Android ডিভাইসের জন্য বিকাশ করতে পারেন
- রিয়েল টাইমে এমুলেটর এবং ফিজিক্যাল ডিভাইসে কম্পোজেবল আপডেট করতে লাইভ এডিট করুন
- কোড টেমপ্লেট এবং GitHub ইন্টিগ্রেশন আপনাকে সাধারণ অ্যাপ বৈশিষ্ট্য তৈরি করতে এবং নমুনা কোড আমদানি করতে সহায়তা করে
- বিস্তৃত পরীক্ষার সরঞ্জাম এবং কাঠামো
- কার্যক্ষমতা, ব্যবহারযোগ্যতা, সংস্করণ সামঞ্জস্য এবং অন্যান্য সমস্যাগুলি ধরতে লিন্ট টুল
- C++ এবং NDK সমর্থন
- Google ক্লাউড প্ল্যাটফর্মের জন্য অন্তর্নির্মিত সমর্থন, Google ক্লাউড মেসেজিং এবং অ্যাপ ইঞ্জিনকে একীভূত করা সহজ করে তোলে
এই পৃষ্ঠাটি মৌলিক অ্যান্ড্রয়েড স্টুডিও বৈশিষ্ট্যগুলির একটি ভূমিকা প্রদান করে৷ সর্বশেষ পরিবর্তনের সারসংক্ষেপের জন্য, অ্যান্ড্রয়েড স্টুডিও রিলিজ নোটগুলি দেখুন।
প্রকল্প কাঠামো
![](https://developer.android.com/static/studio/images/project-android-view.png?authuser=4&hl=bn)
চিত্র 1. অ্যান্ড্রয়েড প্রকল্প দৃশ্যে প্রকল্প ফাইল।
অ্যান্ড্রয়েড স্টুডিওর প্রতিটি প্রকল্পে সোর্স কোড ফাইল এবং রিসোর্স ফাইল সহ এক বা একাধিক মডিউল থাকে। মডিউলের প্রকারের মধ্যে রয়েছে:
- অ্যান্ড্রয়েড অ্যাপ মডিউল
- লাইব্রেরি মডিউল
- গুগল অ্যাপ ইঞ্জিন মডিউল
ডিফল্টরূপে, অ্যান্ড্রয়েড স্টুডিও আপনার প্রোজেক্ট ফাইলগুলিকে অ্যান্ড্রয়েড প্রোজেক্ট ভিউতে প্রদর্শন করে, যেমনটি চিত্র 1-এ দেখানো হয়েছে। এই ভিউটি আপনার প্রোজেক্টের মূল সোর্স ফাইলগুলিতে দ্রুত অ্যাক্সেস দেওয়ার জন্য মডিউল দ্বারা সংগঠিত। সমস্ত বিল্ড ফাইল গ্রেডল স্ক্রিপ্টের অধীনে উপরের স্তরে দৃশ্যমান।
প্রতিটি অ্যাপ মডিউলে নিম্নলিখিত ফোল্ডারগুলি রয়েছে:
- ম্যানিফেস্ট :
AndroidManifest.xml
ফাইল ধারণ করে। - java : কোটলিন এবং জাভা সোর্স কোড ফাইল রয়েছে, যার মধ্যে JUnit টেস্ট কোড রয়েছে।
- res : UI স্ট্রিং এবং বিটম্যাপ ছবিগুলির মতো সমস্ত নন-কোড সংস্থান রয়েছে৷
ডিস্কে অ্যান্ড্রয়েড প্রকল্পের কাঠামো এই সমতল উপস্থাপনা থেকে আলাদা। প্রজেক্টের প্রকৃত ফাইল স্ট্রাকচার দেখতে প্রজেক্ট মেনু থেকে Android এর পরিবর্তে Project নির্বাচন করুন।
আরও তথ্যের জন্য, প্রকল্প ওভারভিউ দেখুন।
গ্রেডল বিল্ড সিস্টেম
অ্যান্ড্রয়েড স্টুডিও গ্রেডলকে অ্যান্ড্রয়েড গ্রেডল প্লাগইন দ্বারা প্রদত্ত আরও অ্যান্ড্রয়েড-নির্দিষ্ট ক্ষমতা সহ বিল্ড সিস্টেমের ভিত্তি হিসাবে ব্যবহার করে। এই বিল্ড সিস্টেমটি অ্যান্ড্রয়েড স্টুডিও মেনু থেকে এবং কমান্ড লাইন থেকে স্বাধীনভাবে একটি সমন্বিত টুল হিসাবে চলে। আপনি নিম্নলিখিতগুলি করতে বিল্ড সিস্টেমের বৈশিষ্ট্যগুলি ব্যবহার করতে পারেন:
- কাস্টমাইজ করুন, কনফিগার করুন এবং বিল্ড প্রক্রিয়া প্রসারিত করুন।
- একই প্রকল্প এবং মডিউল ব্যবহার করে বিভিন্ন বৈশিষ্ট্য সহ আপনার অ্যাপের জন্য একাধিক APK তৈরি করুন৷
- সোর্স সেট জুড়ে কোড এবং সম্পদ পুনঃব্যবহার করুন।
Gradle-এর নমনীয়তা ব্যবহার করে, আপনি আপনার অ্যাপের মূল উৎস ফাইলগুলি পরিবর্তন না করেই এই সমস্ত কিছু অর্জন করতে পারেন৷
অ্যান্ড্রয়েড স্টুডিও বিল্ড ফাইলের নাম দেওয়া হয় build.gradle.kts
যদি আপনি Kotlin ব্যবহার করেন (প্রস্তাবিত) অথবা build.gradle
যদি আপনি Groovy ব্যবহার করেন। এগুলি হল প্লেইন টেক্সট ফাইল যা অ্যান্ড্রয়েড গ্রেডল প্লাগইন দ্বারা প্রদত্ত উপাদানগুলির সাথে বিল্ড কনফিগার করতে Kotlin বা Groovy সিনট্যাক্স ব্যবহার করে। প্রতিটি প্রকল্পে সমগ্র প্রকল্পের জন্য একটি শীর্ষ-স্তরের বিল্ড ফাইল এবং প্রতিটি মডিউলের জন্য পৃথক মডিউল-স্তরের বিল্ড ফাইল রয়েছে। আপনি যখন একটি বিদ্যমান প্রকল্প আমদানি করেন, তখন Android স্টুডিও স্বয়ংক্রিয়ভাবে প্রয়োজনীয় বিল্ড ফাইল তৈরি করে।
বিল্ড সিস্টেম সম্পর্কে আরও জানতে এবং কীভাবে আপনার বিল্ড কনফিগার করবেন, দেখুন আপনার বিল্ড কনফিগার করুন ।
ভেরিয়েন্ট তৈরি করুন
বিল্ড সিস্টেম আপনাকে একটি একক প্রকল্প থেকে একই অ্যাপের বিভিন্ন সংস্করণ তৈরি করতে সাহায্য করতে পারে। এটি উপযোগী যখন আপনার অ্যাপের একটি বিনামূল্যের সংস্করণ এবং একটি অর্থপ্রদানের সংস্করণ উভয়ই থাকে অথবা আপনি যদি Google Play-তে বিভিন্ন ডিভাইস কনফিগারেশনের জন্য একাধিক APK বিতরণ করতে চান।
বিল্ড ভেরিয়েন্ট কনফিগার করার বিষয়ে আরও তথ্যের জন্য, বিল্ড ভেরিয়েন্ট কনফিগার করুন দেখুন।
একাধিক APK সমর্থন
একাধিক APK সমর্থন আপনাকে দক্ষতার সাথে পর্দার ঘনত্ব বা ABI এর উপর ভিত্তি করে একাধিক APK তৈরি করতে দেয়। উদাহরণস্বরূপ, আপনি hdpi
এবং mdpi
স্ক্রীন ঘনত্বের জন্য একটি অ্যাপের পৃথক APK তৈরি করতে পারেন, যখন এখনও সেগুলিকে একটি একক রূপ বিবেচনা করে এবং তাদের পরীক্ষা APK, javac
, dx
এবং ProGuard সেটিংস ভাগ করতে দেয়৷
একাধিক APK সমর্থন সম্পর্কে আরও তথ্যের জন্য, একাধিক APK তৈরি করুন পড়ুন।
সম্পদ সঙ্কুচিত
অ্যান্ড্রয়েড স্টুডিওতে রিসোর্স সঙ্কুচিত হওয়া স্বয়ংক্রিয়ভাবে আপনার প্যাকেজ করা অ্যাপ এবং লাইব্রেরি নির্ভরতা থেকে অব্যবহৃত সংস্থানগুলি সরিয়ে দেয়। উদাহরণস্বরূপ, যদি আপনার অ্যাপ Google ড্রাইভ কার্যকারিতা অ্যাক্সেস করতে Google Play পরিষেবাগুলি ব্যবহার করে, এবং আপনি বর্তমানে Google সাইন-ইন ব্যবহার করছেন না, তাহলে রিসোর্স সঙ্কুচিত হওয়া SignInButton
বোতামগুলির জন্য বিভিন্ন অঙ্কনযোগ্য সম্পদগুলিকে সরিয়ে দিতে পারে৷
দ্রষ্টব্য: সম্পদ সঙ্কুচিত করা কোড সঙ্কুচিত করার সরঞ্জামগুলির সাথে একত্রে কাজ করে, যেমন ProGuard।
সঙ্কুচিত কোড এবং সংস্থান সম্পর্কে আরও তথ্যের জন্য, দেখুন সঙ্কুচিত করুন, অস্পষ্ট করুন এবং আপনার অ্যাপটি অপ্টিমাইজ করুন ৷
নির্ভরতা পরিচালনা করুন
আপনার প্রকল্পের জন্য নির্ভরতা মডিউল-স্তরের বিল্ড স্ক্রিপ্টে নাম দ্বারা নির্দিষ্ট করা হয়। Gradle নির্ভরতা খুঁজে পায় এবং সেগুলিকে আপনার বিল্ডে উপলব্ধ করে। আপনি আপনার build.gradle.kts
ফাইলে মডিউল নির্ভরতা, দূরবর্তী বাইনারি নির্ভরতা এবং স্থানীয় বাইনারি নির্ভরতা ঘোষণা করতে পারেন।
অ্যান্ড্রয়েড স্টুডিও ডিফল্টরূপে মাভেন সেন্ট্রাল রিপোজিটরি ব্যবহার করার জন্য প্রকল্পগুলি কনফিগার করে। এই কনফিগারেশনটি প্রকল্পের জন্য শীর্ষ-স্তরের বিল্ড ফাইলে অন্তর্ভুক্ত করা হয়েছে।
নির্ভরতা কনফিগার করার বিষয়ে আরও তথ্যের জন্য, বিল্ড নির্ভরতা যুক্ত করুন পড়ুন।
ডিবাগ এবং প্রোফাইল টুল
অ্যান্ড্রয়েড স্টুডিও ইনলাইন ডিবাগিং এবং পারফরম্যান্স বিশ্লেষণ টুল সহ আপনার কোডের কার্যক্ষমতা ডিবাগ এবং উন্নত করতে সহায়তা করে।
ইনলাইন ডিবাগিং
রেফারেন্স, এক্সপ্রেশন এবং পরিবর্তনশীল মানগুলির ইনলাইন যাচাইকরণের সাথে ডিবাগার ভিউতে আপনার কোড ওয়াকথ্রুগুলিকে উন্নত করতে ইনলাইন ডিবাগিং ব্যবহার করুন।
ইনলাইন ডিবাগ তথ্য অন্তর্ভুক্ত:
- ইনলাইন পরিবর্তনশীল মান
- অবজেক্ট যা একটি নির্বাচিত বস্তুর উল্লেখ করে
- পদ্ধতি রিটার্ন মান
- ল্যাম্বডা এবং অপারেটর এক্সপ্রেশন
- টুলটিপ মান
ইনলাইন ডিবাগিং সক্ষম করতে, ডিবাগ উইন্ডোতে, সেটিংস ক্লিক করুন এবং এডিটরে পরিবর্তনশীল মান দেখান নির্বাচন করুন।
কর্মক্ষমতা প্রোফাইলার
অ্যান্ড্রয়েড স্টুডিও পারফরম্যান্স প্রোফাইলার সরবরাহ করে যাতে আপনি সহজেই আপনার অ্যাপের মেমরি এবং সিপিইউ ব্যবহার ট্র্যাক করতে পারেন, ডিলোকেটেড অবজেক্টগুলি খুঁজে পেতে পারেন, মেমরি লিকগুলি সনাক্ত করতে পারেন, গ্রাফিক্স কর্মক্ষমতা অপ্টিমাইজ করতে পারেন এবং নেটওয়ার্ক অনুরোধগুলি বিশ্লেষণ করতে পারেন৷
পারফরম্যান্স প্রোফাইলার ব্যবহার করতে, আপনার অ্যাপটি একটি ডিভাইস বা এমুলেটরে চলমান অবস্থায়, ভিউ > টুল উইন্ডোজ > প্রোফাইলার নির্বাচন করে অ্যান্ড্রয়েড প্রোফাইলার খুলুন।
পারফরম্যান্স প্রোফাইলার সম্পর্কে আরও তথ্যের জন্য, আপনার অ্যাপের কর্মক্ষমতা প্রোফাইল দেখুন।
গাদা ডাম্প
অ্যান্ড্রয়েড স্টুডিওতে মেমরি ব্যবহার প্রোফাইল করার সময়, আপনি একই সাথে আবর্জনা সংগ্রহ শুরু করতে পারেন এবং জাভা হিপটিকে একটি অ্যান্ড্রয়েড-নির্দিষ্ট HPROF
বাইনারি ফর্ম্যাট ফাইলে একটি হিপ স্ন্যাপশটে ডাম্প করতে পারেন। এইচপিআরওএফ ভিউয়ার ক্লাস, প্রতিটি ক্লাসের উদাহরণ এবং একটি রেফারেন্স ট্রি প্রদর্শন করে যাতে আপনাকে মেমরির ব্যবহার ট্র্যাক করতে এবং মেমরি লিক খুঁজে পেতে সহায়তা করে।
হিপ ডাম্পের সাথে কাজ করার বিষয়ে আরও তথ্যের জন্য, ক্যাপচার একটি হিপ ডাম্প দেখুন।
মেমরি প্রোফাইলার
মেমরি বরাদ্দকরণ ট্র্যাক করতে মেমরি প্রোফাইলার ব্যবহার করুন এবং আপনি নির্দিষ্ট ক্রিয়া সম্পাদন করার সময় বস্তুগুলি কোথায় বরাদ্দ করা হচ্ছে তা দেখুন। এই বরাদ্দগুলি আপনাকে সেই ক্রিয়াগুলির সাথে সম্পর্কিত মেথড কলগুলি সামঞ্জস্য করে আপনার অ্যাপের কার্যক্ষমতা এবং মেমরি ব্যবহারকে অপ্টিমাইজ করতে সহায়তা করে৷
ট্র্যাকিং এবং বরাদ্দ বিশ্লেষণ সম্পর্কে তথ্যের জন্য, মেমরি বরাদ্দ দেখুন দেখুন।
ডেটা ফাইল অ্যাক্সেস
Android SDK টুল, যেমন Systrace এবং Logcat , বিস্তারিত অ্যাপ বিশ্লেষণের জন্য কর্মক্ষমতা এবং ডিবাগিং ডেটা তৈরি করে।
উপলব্ধ উত্পন্ন ডেটা ফাইল দেখতে:
- ক্যাপচার টুল উইন্ডো খুলুন।
- উত্পন্ন ফাইলগুলির তালিকায়, ডেটা দেখতে একটি ফাইলে ডাবল-ক্লিক করুন।
- স্ট্যান্ডার্ডে রূপান্তর করতে যেকোনো HPROF ফাইলগুলিতে ডান-ক্লিক করুন।
- আপনার RAM ব্যবহারের ফাইল বিন্যাস তদন্ত করুন.
কোড পরিদর্শন
আপনি যখনই আপনার প্রোগ্রাম কম্পাইল করেন, তখনই Android স্টুডিও স্বয়ংক্রিয়ভাবে কনফিগার করা লিন্ট চেক এবং অন্যান্য IDE পরিদর্শন চালায় যাতে আপনি সহজেই আপনার কোডের কাঠামোগত মানের সমস্যাগুলি সনাক্ত করতে এবং সংশোধন করতে পারেন৷
লিন্ট টুলটি আপনার অ্যান্ড্রয়েড প্রোজেক্ট সোর্স ফাইলগুলিকে সম্ভাব্য বাগ এবং সঠিকতা, নিরাপত্তা, কর্মক্ষমতা, ব্যবহারযোগ্যতা, অ্যাক্সেসযোগ্যতা এবং আন্তর্জাতিকীকরণের জন্য অপ্টিমাইজেশন উন্নতির জন্য পরীক্ষা করে।
চিত্র 2. অ্যান্ড্রয়েড স্টুডিওতে লিন্ট পরিদর্শনের ফলাফল।
লিন্ট চেক ছাড়াও, অ্যান্ড্রয়েড স্টুডিও ইন্টেলিজে কোড পরিদর্শন করে এবং আপনার কোডিং ওয়ার্কফ্লোকে স্ট্রীমলাইন করতে টীকা যাচাই করে।
আরও তথ্যের জন্য, লিন্ট চেক দিয়ে আপনার কোড উন্নত করুন দেখুন।
অ্যান্ড্রয়েড স্টুডিওতে টীকা
অ্যান্ড্রয়েড স্টুডিও ভেরিয়েবল, প্যারামিটার এবং রিটার্ন মানগুলির জন্য টীকা সমর্থন করে যাতে আপনি বাগ ধরতে পারেন, যেমন নাল পয়েন্টার ব্যতিক্রম এবং রিসোর্স টাইপ দ্বন্দ্ব।
অ্যান্ড্রয়েড SDK ম্যানেজার অ্যান্ড্রয়েড স্টুডিওর সাথে ব্যবহারের জন্য অ্যান্ড্রয়েড সাপোর্ট রিপোজিটরিতে জেটপ্যাক অ্যানোটেশন লাইব্রেরি প্যাকেজ করে। অ্যান্ড্রয়েড স্টুডিও কোড পরিদর্শনের সময় কনফিগার করা টীকা যাচাই করে।
অ্যান্ড্রয়েড টীকা সম্পর্কে আরও বিশদ বিবরণের জন্য, টীকা সহ কোড পরিদর্শন উন্নত করুন দেখুন।
লগ বার্তা
আপনি যখন অ্যান্ড্রয়েড স্টুডিওর সাথে আপনার অ্যাপ তৈরি এবং চালান, তখন আপনি Logcat উইন্ডোতে adb
আউটপুট এবং ডিভাইস লগ বার্তা দেখতে পারেন।
আপনার ডেভেলপার অ্যাকাউন্টে সাইন ইন করুন
Android স্টুডিওতে আপনার ডেভেলপার অ্যাকাউন্টে সাইন ইন করুন অতিরিক্ত টুলগুলি অ্যাক্সেস করতে যাতে প্রমাণীকরণের প্রয়োজন হয়, যেমন Firebase এবং Android Vitals in App Quality Insights এবং Android Studio-তে Gemini । সাইন ইন করার মাধ্যমে, আপনি সেই টুলগুলিকে Google পরিষেবাগুলিতে আপনার ডেটা দেখতে এবং পরিচালনা করার অনুমতি দেন৷
অ্যান্ড্রয়েড স্টুডিওতে আপনার বিকাশকারী অ্যাকাউন্টে সাইন ইন করতে, প্রোফাইল আইকনে ক্লিক করুন টুলবারের শেষে। আপনি সক্ষম করতে চান এমন প্রতিটি বৈশিষ্ট্যের জন্য প্রয়োজনীয় অনুমতিগুলির সাথে IDE প্রদান করতে প্রম্পটগুলি অনুসরণ করুন৷ আপনি যদি ইতিমধ্যেই সাইন ইন করে থাকেন, তাহলে ফাইল ( macOS-এ অ্যান্ড্রয়েড স্টুডিও ) > সেটিংস > টুলস > Google অ্যাকাউন্টে অনুমতিগুলি পরিচালনা করুন।