আপনার অ্যাপটি একটি ডিভাইসে কেমন দেখায় এবং আচরণ করে তা দেখতে, আপনাকে এটি তৈরি এবং চালাতে হবে। অ্যান্ড্রয়েড স্টুডিও নতুন প্রকল্পগুলি সেট আপ করে যাতে আপনি কয়েকটি ক্লিকের মাধ্যমে আপনার অ্যাপটিকে একটি ভার্চুয়াল বা একটি শারীরিক ডিভাইসে স্থাপন করতে পারেন৷
এই সংক্ষিপ্ত বিবরণটি পরীক্ষা এবং ডিবাগিংয়ের জন্য আপনার অ্যাপ তৈরি এবং চালানোর জন্য কীভাবে Android স্টুডিও ব্যবহার করবেন তার উপর ফোকাস করে। কীভাবে আপনার অ্যাপ তৈরি করতে Android স্টুডিও ব্যবহার করবেন যাতে এটি ব্যবহারকারীদের কাছে প্রকাশ করা যায় সে সম্পর্কে তথ্যের জন্য, ব্যবহারকারীদের কাছে প্রকাশের জন্য আপনার অ্যাপ তৈরি করুন দেখুন। অ্যান্ড্রয়েড স্টুডিওর সাথে বা ছাড়া আপনার বিল্ড পরিচালনা এবং কাস্টমাইজ করার বিষয়ে আরও বিস্তারিত তথ্যের জন্য, আপনার বিল্ড কনফিগার করুন দেখুন।
বেসিক বিল্ড এবং রান
আপনার অ্যাপ তৈরি এবং চালাতে, এই পদক্ষেপগুলি অনুসরণ করুন:
- টুলবারে, রান কনফিগারেশন মেনু থেকে আপনার অ্যাপটি নির্বাচন করুন।
লক্ষ্য ডিভাইস মেনুতে, আপনি যে ডিভাইসে আপনার অ্যাপ চালাতে চান সেটি নির্বাচন করুন।
আপনার যদি কনফিগার করা কোনো ডিভাইস না থাকে, তাহলে আপনাকে Android এমুলেটর ব্যবহার করার জন্য একটি Android ভার্চুয়াল ডিভাইস তৈরি করতে হবে অথবা একটি শারীরিক ডিভাইস সংযোগ করতে হবে ।
রান ক্লিক করুন
.
অ্যান্ড্রয়েড স্টুডিও আপনাকে সতর্ক করে যদি আপনি আপনার প্রোজেক্টকে এমন কোনো ডিভাইসে লঞ্চ করার চেষ্টা করেন যার সাথে কোনো ত্রুটি বা সতর্কতা যুক্ত থাকে। আইকনোগ্রাফি এবং শৈলীগত পরিবর্তনগুলি ত্রুটিগুলির মধ্যে পার্থক্য করে (ডিভাইস নির্বাচন যার ফলে একটি ভাঙা কনফিগারেশন হয়) এবং সতর্কতা (ডিভাইস নির্বাচন যা অপ্রত্যাশিত আচরণের ফলে হতে পারে কিন্তু এখনও চালানো যায়)।
নির্মাণ প্রক্রিয়া নিরীক্ষণ
বিল্ড প্রক্রিয়া সম্পর্কে বিশদ দেখতে, দেখুন > টুল উইন্ডোজ > বিল্ড নির্বাচন করুন বা বিল্ড ক্লিক করুন টুল উইন্ডো বারে। বিল্ড টুল উইন্ডোটি সেই কাজগুলি প্রদর্শন করে যা Gradle আপনার অ্যাপ তৈরি করতে সম্পাদন করে, যেমন চিত্র 1-এ দেখানো হয়েছে।
![](https://developer.android.com/static/studio/images/run/window-build.png?authuser=0&hl=bn)
- সিঙ্ক ট্যাব: আপনার প্রোজেক্ট ফাইলগুলির সাথে সিঙ্ক করার জন্য গ্রেডল সম্পাদন করে এমন কাজগুলি প্রদর্শন করে। বিল্ড আউটপুট ট্যাবের মতো, যদি আপনি একটি সিঙ্ক ত্রুটির সম্মুখীন হন, ত্রুটি সম্পর্কে আরও তথ্য পেতে গাছের উপাদানগুলি নির্বাচন করুন৷ নির্ভরতা ডাউনলোডগুলি আপনার বিল্ডকে নেতিবাচকভাবে প্রভাবিত করছে কিনা তা নির্ধারণ করতে ডাউনলোড প্রভাবের একটি সারাংশও প্রদর্শন করে।
- বিল্ড আউটপুট ট্যাব: গ্রেডল একটি ট্রি হিসাবে যে কাজগুলি সম্পাদন করে তা প্রদর্শন করে, যেখানে প্রতিটি নোড একটি বিল্ড ফেজ বা টাস্ক নির্ভরতার একটি গ্রুপকে প্রতিনিধিত্ব করে। আপনি যদি বিল্ড-টাইম বা কম্পাইল-টাইম ত্রুটিগুলি পান, ট্রিটি পরিদর্শন করুন এবং ত্রুটি আউটপুট পড়ার জন্য একটি উপাদান নির্বাচন করুন, যেমন চিত্র 2 এ দেখানো হয়েছে।
চিত্র 2. ত্রুটি বার্তাগুলির জন্য বিল্ড আউটপুট ট্যাবটি পরিদর্শন করুন। - বিল্ড অ্যানালাইজার ট্যাব: আপনার বিল্ড সম্পর্কে বিল্ড পারফরম্যান্স বিশ্লেষণ তথ্য প্রদান করে। আরও তথ্যের জন্য বিল্ড অ্যানালাইজার দিয়ে বিল্ড পারফরম্যান্সের সমস্যা সমাধান দেখুন।
- পুনঃসূচনা: আবার শেষ বিল্ড ক্রিয়া সম্পাদন করে। আপনি শেষবার Build > Make Selected Module চালালে, এটি বর্তমান মডিউল তৈরি করবে। আপনি শেষবার Build > Make Project চালালে, এটি আপনার প্রকল্পের সমস্ত মডিউলের জন্য মধ্যবর্তী বিল্ড ফাইল তৈরি করবে।
- ফিল্টার: সতর্কতা, কাজ বা সফলভাবে সম্পন্ন হওয়া উভয়কেই ফিল্টার করে। এটি আউটপুটে সমস্যাগুলি খুঁজে পাওয়া সহজ করে তুলতে পারে।
যদি আপনার বিল্ড ভেরিয়েন্টগুলি পণ্যের স্বাদ ব্যবহার করে, Gradle সেই পণ্যগুলির স্বাদগুলি তৈরি করার জন্য কাজগুলিকেও আহ্বান করে। সমস্ত উপলব্ধ বিল্ড কাজের তালিকা দেখতে, দেখুন > টুল উইন্ডোজ > গ্রেডলে ক্লিক করুন বা গ্রেডলে ক্লিক করুন টুল উইন্ডো বারে।
বিল্ড প্রক্রিয়া চলাকালীন কোনো ত্রুটি দেখা দিলে, সমস্যা সমাধানে সাহায্য করার জন্য Gradle কমান্ড-লাইন বিকল্পগুলি সুপারিশ করতে পারে, যেমন --stacktrace
বা --debug
। আপনার বিল্ড প্রক্রিয়ার সাথে কমান্ড-লাইন বিকল্পগুলি ব্যবহার করতে:
- সেটিংস বা পছন্দ ডায়ালগ খুলুন:
- উইন্ডোজ বা লিনাক্সে, মেনু বার থেকে ফাইল > সেটিংস নির্বাচন করুন।
- macOS-এ, মেনু বার থেকে Android Studio > Preferences নির্বাচন করুন।
- বিল্ড, এক্সিকিউশন, ডিপ্লয়মেন্ট > কম্পাইলার -এ নেভিগেট করুন।
- কমান্ড-লাইন বিকল্পগুলির পাশের পাঠ্য ক্ষেত্রে, আপনার কমান্ড-লাইন বিকল্পগুলি লিখুন।
- সংরক্ষণ এবং প্রস্থান করতে ঠিক আছে ক্লিক করুন.
পরের বার যখন আপনি আপনার অ্যাপ তৈরি করার চেষ্টা করবেন তখন গ্রেডল এই কমান্ড-লাইন বিকল্পগুলি প্রয়োগ করবে।
উন্নত বিল্ড এবং রান বৈশিষ্ট্য
অ্যান্ড্রয়েড স্টুডিওতে আপনার অ্যাপ তৈরি এবং চালানোর ডিফল্ট উপায় একটি সাধারণ অ্যাপ পরীক্ষা করার জন্য যথেষ্ট হওয়া উচিত। যাইহোক, আপনি আরও উন্নত ব্যবহারের ক্ষেত্রে এই বিল্ড এবং রান বৈশিষ্ট্যগুলি ব্যবহার করতে পারেন:
ডিবাগ মোডে আপনার অ্যাপ স্থাপন করতে, ডিবাগ এ ক্লিক করুন
. ডিবাগ মোডে আপনার অ্যাপ চালানোর ফলে আপনি আপনার কোডে ব্রেকপয়েন্ট সেট করতে পারবেন, ভেরিয়েবল পরীক্ষা করতে পারবেন এবং রান-টাইমে এক্সপ্রেশন মূল্যায়ন করতে পারবেন এবং ডিবাগিং টুল চালাতে পারবেন। আরও জানতে, আপনার অ্যাপ ডিবাগ করুন দেখুন।
আপনার যদি একটি বড়, আরও জটিল অ্যাপ থাকে, তাহলে Run এ ক্লিক করার পরিবর্তে পরিবর্তনগুলি প্রয়োগ করুন
. এটি সময় সাশ্রয় করে, কারণ আপনি যখনই কোনও পরিবর্তন স্থাপন করতে চান তখন আপনি আপনার অ্যাপটি পুনরায় চালু করা এড়ান। পরিবর্তনগুলি প্রয়োগ করার বিষয়ে আরও তথ্যের জন্য, পরিবর্তনগুলি প্রয়োগের সাথে ক্রমবর্ধমানভাবে স্থাপন করুন বিভাগটি দেখুন।
আপনি যদি জেটপ্যাক কম্পোজ ব্যবহার করেন, লাইভ এডিট হল একটি পরীক্ষামূলক বৈশিষ্ট্য যা আপনাকে Run-এ ক্লিক না করে রিয়েল টাইমে কম্পোজেবল আপডেট করতে দেয়
. এটি আপনাকে ন্যূনতম বাধা সহ UI কোড লেখার উপর ফোকাস করতে দেয়। আরও তথ্যের জন্য, লাইভ এডিট (পরীক্ষামূলক) বিভাগটি দেখুন।
আপনার যদি একাধিক বিল্ড ভেরিয়েন্ট বা সংস্করণ সহ একটি অ্যাপ থাকে তবে আপনি বিল্ড ভেরিয়েন্ট টুল উইন্ডো ব্যবহার করে কোন বিল্ড ভেরিয়েন্ট স্থাপন করতে হবে তা বেছে নিতে পারেন। একটি নির্দিষ্ট বিল্ড ভেরিয়েন্ট চালানো সম্পর্কে আরও তথ্যের জন্য, বিল্ড ভেরিয়েন্ট পরিবর্তন করুন বিভাগটি দেখুন।
অ্যাপ ইনস্টলেশন, লঞ্চ এবং পরীক্ষার বিকল্পগুলিকে সূক্ষ্ম-টিউন করতে, আপনি রান/ডিবাগ কনফিগারেশন পরিবর্তন করতে পারেন। কাস্টম রান/ডিবাগ কনফিগারেশন তৈরি করার বিষয়ে আরও তথ্যের জন্য, রান/ডিবাগ কনফিগারেশন তৈরি করুন বিভাগটি দেখুন।
আমরা সুপারিশ করি যে আপনি আপনার বিকাশের প্রয়োজনের জন্য অ্যান্ড্রয়েড স্টুডিও ব্যবহার করুন, তবে আপনি কমান্ড লাইন থেকে একটি ভার্চুয়াল বা শারীরিক ডিভাইসে আপনার অ্যাপ স্থাপন করতে পারেন। আরও তথ্যের জন্য, কমান্ড লাইন থেকে আপনার অ্যাপ তৈরি করুন দেখুন।
পরিবর্তনগুলি প্রয়োগ করে ক্রমবর্ধমানভাবে স্থাপন করুন
অ্যান্ড্রয়েড স্টুডিও 3.5 এবং উচ্চতর সংস্করণে, প্রয়োগ করুন পরিবর্তনগুলি আপনাকে আপনার অ্যাপ রিস্টার্ট না করেই আপনার চলমান অ্যাপে কোড এবং রিসোর্স পরিবর্তনগুলি পুশ করতে দেয়—এবং কিছু ক্ষেত্রে, বর্তমান অ্যাক্টিভিটি রিস্টার্ট না করেও। এই নমনীয়তা আপনাকে নিয়ন্ত্রণ করতে সাহায্য করে যখন আপনি আপনার ডিভাইসের বর্তমান অবস্থা সংরক্ষণ করার সময় ছোট, ক্রমবর্ধমান পরিবর্তনগুলি স্থাপন এবং পরীক্ষা করতে চান তখন আপনার অ্যাপের কতটা পুনরায় চালু করা হবে।
অ্যাপ্লাই পরিবর্তনগুলি অ্যান্ড্রয়েড জেভিএমটিআই বাস্তবায়নের ক্ষমতা ব্যবহার করে যা অ্যান্ড্রয়েড 8.0 (এপিআই স্তর 26) বা উচ্চতর চলমান ডিভাইসগুলিতে সমর্থিত। কিভাবে প্রয়োগ পরিবর্তনগুলি কাজ করে সে সম্পর্কে আরও জানতে, Android স্টুডিও প্রজেক্ট মার্বেল দেখুন: পরিবর্তনগুলি প্রয়োগ করুন ।
প্রয়োজনীয়তা
আপনি নিম্নলিখিত শর্তগুলি পূরণ করলেই পরিবর্তনগুলি প্রয়োগ করুন ক্রিয়াগুলি উপলব্ধ হয়:
- আপনি একটি ডিবাগ বিল্ড ভেরিয়েন্ট ব্যবহার করে আপনার অ্যাপের APK তৈরি করেন।
- আপনি Android 8.0 (API লেভেল 26) বা উচ্চতর চালিত একটি টার্গেট ডিভাইস বা এমুলেটরে আপনার অ্যাপ স্থাপন করেন।
পরিবর্তন প্রয়োগ করুন ব্যবহার করুন
আপনি যখন একটি সামঞ্জস্যপূর্ণ ডিভাইসে আপনার পরিবর্তনগুলি স্থাপন করতে চান তখন নিম্নলিখিত বিকল্পগুলি ব্যবহার করুন:
পরিবর্তনগুলি প্রয়োগ করুন এবং কার্যকলাপ পুনরায় চালু করুন : আপনার অ্যাক্টিভিটি রিস্টার্ট করে কিন্তু আপনার অ্যাপ রিস্টার্ট না করেই আপনার রিসোর্স এবং কোড পরিবর্তন উভয়ই প্রয়োগ করার প্রচেষ্টা। সাধারণত, আপনি এই বিকল্পটি ব্যবহার করতে পারেন যখন আপনি একটি পদ্ধতির মূল অংশে কোড পরিবর্তন করেন বা একটি বিদ্যমান সংস্থান পরিবর্তন করেন।
আপনি Control + Alt + F10 ( MacOS-এ Control + Command + Shift + R ) টিপেও এই কাজটি সম্পাদন করতে পারেন।
কোড পরিবর্তন প্রয়োগ করুন : কিছু রিস্টার্ট না করে শুধুমাত্র আপনার কোড পরিবর্তন করার চেষ্টা করে। সাধারণত, আপনি এই বিকল্পটি ব্যবহার করতে পারেন যখন আপনি একটি পদ্ধতির মূল অংশে কোড পরিবর্তন করেছেন কিন্তু আপনি কোনো সংস্থান পরিবর্তন করেননি। আপনি যদি কোড এবং রিসোর্স উভয়ই পরিবর্তন করে থাকেন, তাহলে পরিবর্তনগুলি প্রয়োগ করুন এবং এর পরিবর্তে কার্যকলাপ পুনরায় চালু করুন ।
আপনি Control + F10 ( MacOS-এ Control + Command + R ) টিপেও এই ক্রিয়াটি সম্পাদন করতে পারেন।
চালান : সমস্ত পরিবর্তন স্থাপন করে এবং অ্যাপটি পুনরায় চালু করে। এই বিকল্পটি ব্যবহার করুন যখন আপনার করা পরিবর্তনগুলি প্রয়োগ করা পরিবর্তনগুলি বিকল্পগুলির একটি ব্যবহার করে প্রয়োগ করা যাবে না৷ যে ধরনের পরিবর্তনগুলির জন্য একটি অ্যাপ পুনরায় চালু করতে হবে সে সম্পর্কে আরও জানতে, পরিবর্তন প্রয়োগের সীমাবদ্ধতা বিভাগটি দেখুন।
পরিবর্তনগুলি প্রয়োগ করার জন্য রান ফলব্যাক সক্ষম করুন৷
যখন আপনি পরিবর্তনগুলি প্রয়োগ করুন এবং কার্যকলাপ পুনরায় চালু করুন বা কোড পরিবর্তনগুলি প্রয়োগ করুন ক্লিক করুন, Android স্টুডিও একটি নতুন APK তৈরি করে এবং পরিবর্তনগুলি প্রয়োগ করা যেতে পারে কিনা তা নির্ধারণ করে৷ যদি পরিবর্তনগুলি প্রয়োগ করা না যায় এবং পরিবর্তনগুলি প্রয়োগ করতে ব্যর্থ হয়, তাহলে Android স্টুডিও আপনাকে চালানোর জন্য অনুরোধ করে পরিবর্তে আবার আপনার অ্যাপ।
আপনি যদি প্রতিবার এটি হওয়ার জন্য অনুরোধ না করতে চান, তবে পরিবর্তনগুলি প্রয়োগ করা না গেলে আপনি স্বয়ংক্রিয়ভাবে আপনার অ্যাপ পুনরায় চালু করতে Android স্টুডিও কনফিগার করতে পারেন। এই আচরণ সক্ষম করতে, এই পদক্ষেপগুলি অনুসরণ করুন:
সেটিংস বা পছন্দ ডায়ালগ খুলুন:
- উইন্ডোজ বা লিনাক্সে, মেনু থেকে ফাইল > সেটিংস নির্বাচন করুন।
- macOS-এ, মেনু থেকে Android Studio > Preferences নির্বাচন করুন।
বিল্ড, এক্সিকিউশন, ডিপ্লয়মেন্ট > ডিপ্লয়মেন্টে নেভিগেট করুন।
পরিবর্তনগুলি প্রয়োগ করুন বা উভয়ের জন্য স্বয়ংক্রিয় রান ফলব্যাক সক্ষম করতে চেকবক্সগুলি নির্বাচন করুন৷
ওকে ক্লিক করুন।
প্ল্যাটফর্ম-নির্ভর পরিবর্তন
প্রয়োগ পরিবর্তনের কিছু বৈশিষ্ট্য Android প্ল্যাটফর্মের নির্দিষ্ট সংস্করণের উপর নির্ভর করে। এই ধরনের পরিবর্তনগুলি প্রয়োগ করতে, আপনার অ্যাপটি অবশ্যই Android এর (বা উচ্চতর) সংস্করণে চলমান একটি ডিভাইসে স্থাপন করতে হবে। উদাহরণস্বরূপ, একটি পদ্ধতি যোগ করার জন্য Android 11 বা উচ্চতর সংস্করণ প্রয়োজন।
পরিবর্তন প্রয়োগের সীমাবদ্ধতা
অ্যাপ্লাই পরিবর্তনগুলি অ্যাপ স্থাপনের প্রক্রিয়াটিকে দ্রুত করার জন্য ডিজাইন করা হয়েছে। যাইহোক, এটি কখন ব্যবহার করা যেতে পারে তার কিছু সীমাবদ্ধতা রয়েছে।
কোড পরিবর্তনের জন্য অ্যাপ রিস্টার্ট প্রয়োজন
অ্যাপটি রিস্টার্ট না হওয়া পর্যন্ত কিছু কোড এবং রিসোর্স পরিবর্তনগুলি প্রয়োগ করা যাবে না, নিম্নলিখিতগুলি সহ:
- একটি ক্ষেত্র যোগ করা বা সরানো
- একটি পদ্ধতি অপসারণ
- পরিবর্তন পদ্ধতি স্বাক্ষর
- পদ্ধতি বা ক্লাস পরিবর্তনকারী পরিবর্তন
- বর্গ উত্তরাধিকার পরিবর্তন
- enums মধ্যে মান পরিবর্তন
- একটি সম্পদ যোগ বা অপসারণ
- অ্যাপ ম্যানিফেস্ট পরিবর্তন করা হচ্ছে
- নেটিভ লাইব্রেরি পরিবর্তন করা হচ্ছে (SO ফাইল)
লাইব্রেরি এবং প্লাগইন
কিছু লাইব্রেরি এবং প্লাগইন স্বয়ংক্রিয়ভাবে আপনার অ্যাপের ম্যানিফেস্ট ফাইলে বা ম্যানিফেস্টে উল্লেখ করা সম্পদে পরিবর্তন করে। এই স্বয়ংক্রিয় আপডেটগুলি নিম্নলিখিত উপায়ে পরিবর্তনগুলি প্রয়োগ করতে হস্তক্ষেপ করতে পারে:
- যদি একটি লাইব্রেরি বা প্লাগইন আপনার অ্যাপের ম্যানিফেস্টে পরিবর্তন করে, আপনি পরিবর্তনগুলি প্রয়োগ করতে পারবেন না। আপনার পরিবর্তনগুলি দেখতে আপনাকে অবশ্যই আপনার অ্যাপটি পুনরায় চালু করতে হবে৷
- যদি একটি লাইব্রেরি বা প্লাগইন আপনার অ্যাপের রিসোর্স ফাইলগুলিতে পরিবর্তন করে, আপনি কোড পরিবর্তনগুলি প্রয়োগ করতে পারবেন না
. আপনাকে অবশ্যই পরিবর্তনগুলি প্রয়োগ করতে হবে এবং কার্যকলাপ পুনরায় চালু করতে হবে
(বা আপনার অ্যাপ রিস্টার্ট করুন) আপনার পরিবর্তনগুলি দেখতে।
এই সীমাবদ্ধতাগুলি এড়াতে, আপনার ডিবাগ বিল্ড ভেরিয়েন্টগুলির জন্য সমস্ত স্বয়ংক্রিয় আপডেটগুলি অক্ষম করুন৷
উদাহরণস্বরূপ, ফায়ারবেস ক্র্যাশলিটিক্স প্রতিটি বিল্ডের সময় একটি অনন্য বিল্ড আইডি সহ অ্যাপ সংস্থানগুলি আপডেট করে, যা আপনাকে কোড পরিবর্তনগুলি প্রয়োগ করতে বাধা দেয় এবং আপনার পরিবর্তনগুলি দেখতে আপনাকে আপনার অ্যাপের কার্যকলাপ পুনরায় চালু করতে হবে৷ আপনার ডিবাগ বিল্ডগুলির সাথে ক্র্যাশলিটিক্সের পাশাপাশি কোড পরিবর্তনগুলি প্রয়োগ করতে এই আচরণটি অক্ষম করুন৷
কোড যেটি সরাসরি একটি ইনস্টল করা APK-এ বিষয়বস্তু উল্লেখ করে
যদি আপনার কোডটি ডিভাইসে ইনস্টল করা আপনার অ্যাপের APK থেকে সরাসরি সামগ্রীর উল্লেখ করে, তাহলে কোড পরিবর্তনগুলি প্রয়োগ করুন ক্লিক করার পরে সেই কোডটি ক্র্যাশ বা খারাপ আচরণ করতে পারে . এই আচরণটি ঘটে কারণ আপনি যখন কোড পরিবর্তনগুলি প্রয়োগ করুন ক্লিক করেন তখন ইনস্টলেশনের সময় ডিভাইসে অন্তর্নিহিত APK প্রতিস্থাপিত হয়। এই ক্ষেত্রে, আপনি পরিবর্তনগুলি প্রয়োগ করুন এবং কার্যকলাপ পুনরায় চালু করতে ক্লিক করতে পারেন
বা চালান
পরিবর্তে।
পরিবর্তনগুলি প্রয়োগ করার সময় আপনি যদি অন্য কোন সমস্যার সম্মুখীন হন, একটি বাগ ফাইল করুন ।
লাইভ এডিট
লাইভ এডিট হল অ্যান্ড্রয়েড স্টুডিওতে একটি পরীক্ষামূলক বৈশিষ্ট্য যা আপনাকে এমুলেটর এবং ফিজিক্যাল ডিভাইসে রিয়েল টাইমে কম্পোজেবল আপডেট করতে দেয়। এই কার্যকারিতা আপনার অ্যাপ লেখা এবং নির্মাণের মধ্যে প্রসঙ্গ পরিবর্তনকে কমিয়ে দেয়, আপনাকে কোনো বাধা ছাড়াই কোড লেখার উপর ফোকাস করতে দেয়।
বিল্ড বৈকল্পিক পরিবর্তন করুন
ডিফল্টরূপে, অ্যান্ড্রয়েড স্টুডিও আপনার অ্যাপের ডিবাগ সংস্করণ তৈরি করে, যেটি শুধুমাত্র বিকাশের সময় ব্যবহারের জন্য, যখন আপনি রান ক্লিক করেন .
অ্যান্ড্রয়েড স্টুডিও ব্যবহার করে বিল্ড ভেরিয়েন্ট পরিবর্তন করতে, নিম্নলিখিতগুলির মধ্যে একটি করুন:
- মেনুতে বিল্ড > বিল্ড ভেরিয়েন্ট নির্বাচন করুন ।
- মেনুতে ভিউ > টুল উইন্ডোজ > বিল্ড ভেরিয়েন্ট নির্বাচন করুন।
- টুল উইন্ডো বারে বিল্ড ভেরিয়েন্ট ট্যাবে ক্লিক করুন।
নেটিভ/C++ কোড ছাড়া প্রকল্পগুলির জন্য, বিল্ড ভেরিয়েন্ট প্যানেলে দুটি কলাম রয়েছে: মডিউল এবং অ্যাক্টিভ বিল্ড ভেরিয়েন্ট । মডিউলটির সক্রিয় বিল্ড ভেরিয়েন্ট মান নির্ধারণ করে যে IDE আপনার সংযুক্ত ডিভাইসে কোন বিল্ড ভেরিয়েন্ট স্থাপন করবে এবং সম্পাদকে দৃশ্যমান হবে।
চিত্র 9. বিল্ড ভেরিয়েন্ট প্যানেলে এমন প্রকল্পগুলির জন্য দুটি কলাম রয়েছে যেখানে নেটিভ/C++ কোড নেই।
বৈকল্পিকগুলির মধ্যে স্যুইচ করতে, একটি মডিউলের জন্য সক্রিয় বিল্ড ভেরিয়েন্ট ঘরে ক্লিক করুন এবং তালিকা থেকে পছন্দসই বৈকল্পিকটি বেছে নিন।
নেটিভ/C++ কোড সহ প্রকল্পগুলির জন্য, বিল্ড ভেরিয়েন্ট প্যানেলে তিনটি কলাম রয়েছে:
- মডিউল
- সক্রিয় বিল্ড বৈকল্পিক
- সক্রিয় ABI
মডিউলটির সক্রিয় বিল্ড ভেরিয়েন্ট মান নির্ধারণ করে যে বিল্ড ভেরিয়েন্টটি IDE আপনার ডিভাইসে স্থাপন করে এবং সম্পাদকে দৃশ্যমান। নেটিভ মডিউলগুলির জন্য, অ্যাক্টিভ ABI মান ABI নির্ধারণ করে যা সম্পাদক ব্যবহার করে, কিন্তু যা স্থাপন করা হয়েছে তা প্রভাবিত করে না।
চিত্র 10. বিল্ড ভেরিয়েন্ট প্যানেল নেটিভ/C++ কোড সহ প্রকল্পগুলির জন্য সক্রিয় ABI কলাম যুক্ত করে।
বিল্ড ভেরিয়েন্ট বা এবিআই পরিবর্তন করতে, অ্যাক্টিভ বিল্ড ভেরিয়েন্ট বা অ্যাক্টিভ এবিআই কলামের ঘরে ক্লিক করুন এবং তালিকা থেকে পছন্দসই ভেরিয়েন্ট বা এবিআই বেছে নিন। আপনি নির্বাচন পরিবর্তন করার পরে, IDE স্বয়ংক্রিয়ভাবে আপনার প্রকল্প সিঙ্ক করে। একটি অ্যাপ বা লাইব্রেরি মডিউলের জন্য কলাম পরিবর্তন করা সমস্ত নির্ভরশীল সারিতে পরিবর্তন প্রযোজ্য।
ডিফল্টরূপে, নতুন প্রকল্প দুটি বিল্ড ভেরিয়েন্টের সাথে সেট আপ করা হয়: একটি ডিবাগ ভেরিয়েন্ট এবং রিলিজ ভেরিয়েন্ট। পাবলিক রিলিজের জন্য আপনার অ্যাপ প্রস্তুত করতে আপনাকে রিলিজ ভেরিয়েন্ট তৈরি করতে হবে। আপনার অ্যাপের অন্যান্য বৈচিত্রগুলিকে বিভিন্ন বৈশিষ্ট্য বা ডিভাইসের প্রয়োজনীয়তার সাথে সংজ্ঞায়িত করতে, আপনি অতিরিক্ত বিল্ড ভেরিয়েন্টগুলিকে সংজ্ঞায়িত করতে পারেন৷
অ্যান্ড্রয়েড স্টুডিও বিল্ড ভেরিয়েন্ট ডায়ালগে দ্বন্দ্ব
অ্যান্ড্রয়েড স্টুডিও বিল্ড ভেরিয়েন্ট ডায়ালগে, আপনি বিল্ড ভেরিয়েন্টের মধ্যে বিরোধ নির্দেশ করে এমন ত্রুটি বার্তা দেখতে পাবেন, যেমন নিম্নলিখিত:
এই ত্রুটি Gradle এর সাথে একটি বিল্ড সমস্যা নির্দেশ করে না। এটি নির্দেশ করে যে Android স্টুডিও IDE নির্বাচিত মডিউলগুলির বৈকল্পিকগুলির মধ্যে প্রতীকগুলি সমাধান করতে পারে না৷
উদাহরণস্বরূপ, যদি আপনার একটি মডিউল M1
থাকে যা মডিউল M2
এর ভেরিয়েন্ট v1
এর উপর নির্ভর করে, কিন্তু M2
ভেরিয়েন্ট v2
IDE-তে নির্বাচন করা থাকে, তাহলে IDE-তে আপনার অমীমাংসিত চিহ্ন রয়েছে। ধরুন M1
একটি ক্লাসের উপর নির্ভর করে যা শুধুমাত্র v1
এ উপলব্ধ; যখন v2
নির্বাচন করা হয়, সেই ক্লাসটি IDE দ্বারা জানা যায় না। তাই এটি ক্লাসের নাম সমাধান করতে ব্যর্থ হয় এবং M1
মডিউলের কোডে ত্রুটি দেখায়।
এই ত্রুটি বার্তাগুলি উপস্থিত হয় কারণ IDE একই সাথে একাধিক ভেরিয়েন্টের জন্য কোড লোড করতে পারে না। আপনার অ্যাপের বিল্ডের পরিপ্রেক্ষিতে, তবে, এই ডায়ালগে নির্বাচিত বৈকল্পিকটির কোন প্রভাব নেই, কারণ গ্রেডল আপনার গ্রেডল বিল্ড রেসিপিতে উল্লেখ করা সোর্স কোড দিয়ে আপনার অ্যাপ তৈরি করে, বর্তমানে IDE-তে যা লোড করা হয়েছে তার উপর ভিত্তি করে নয়।
রান/ডিবাগ কনফিগারেশন পরিবর্তন করুন
আপনি যখন প্রথমবার আপনার অ্যাপ চালান, তখন Android স্টুডিও একটি ডিফল্ট রান কনফিগারেশন ব্যবহার করে। রান কনফিগারেশন নির্দিষ্ট করে যে আপনার অ্যাপটি একটি APK বা একটি অ্যান্ড্রয়েড অ্যাপ বান্ডেল থেকে স্থাপন করা হবে কিনা সেই সাথে চালানোর জন্য মডিউল, স্থাপন করার জন্য প্যাকেজ, শুরু করার জন্য কার্যকলাপ, লক্ষ্য ডিভাইস, এমুলেটর সেটিংস, Logcat বিকল্প এবং আরও অনেক কিছু।
ডিফল্ট রান/ডিবাগ কনফিগারেশন একটি APK তৈরি করে, ডিফল্ট প্রজেক্ট অ্যাক্টিভিটি চালু করে এবং টার্গেট ডিভাইস নির্বাচনের জন্য সিলেক্ট ডিপ্লয়মেন্ট টার্গেট ডায়ালগ ব্যবহার করে। যদি ডিফল্ট সেটিংস আপনার প্রকল্প বা মডিউল অনুসারে না হয়, আপনি রান/ডিবাগ কনফিগারেশন কাস্টমাইজ করতে পারেন বা প্রকল্প, ডিফল্ট এবং মডিউল স্তরে একটি নতুন তৈরি করতে পারেন।
একটি রান/ডিবাগ কনফিগারেশন সম্পাদনা করতে, রান > কনফিগারেশন সম্পাদনা করুন নির্বাচন করুন। আরও তথ্যের জন্য, রান/ডিবাগ কনফিগারেশন তৈরি এবং সম্পাদনা করুন দেখুন।