অ্যান্ড্রয়েড স্টুডিও ৩.১ (মার্চ ২০১৮)
অ্যান্ড্রয়েড স্টুডিও ৩.১.০ একটি প্রধান রিলিজ, যাতে বিভিন্ন নতুন ফিচার ও উন্নতি অন্তর্ভুক্ত করা হয়েছে।
৩.১.৪ (আগস্ট ২০১৮)
অ্যান্ড্রয়েড স্টুডিও ৩.১-এর এই আপডেটে নিম্নলিখিত পরিবর্তন ও সংশোধনগুলো অন্তর্ভুক্ত করা হয়েছে:
- বান্ডেল করা কোটলিনের বর্তমান সংস্করণ হলো ১.২.৫০।
- নতুন প্রজেক্টগুলো
kotlin-stdlib-jdk* artifactsদিয়ে তৈরি করা হয়, কারণkotlin-stdlib-jre*আর্টিফ্যাক্টগুলো এখন আর ব্যবহৃত হয় না। - ProGuard রুলগুলোর R8 পার্সিং উন্নত করা হয়েছে।
- নিম্নলিখিত বাগগুলি সমাধান করা হয়েছে:
- Kotlin Main ক্লাসটি চালানোর চেষ্টা একটি ত্রুটির কারণে ব্যর্থ হয়েছে:
"Error: Could not find or load main class..." - নির্দিষ্ট কিছু অপ্টিমাইজেশন করার সময় R8 একটি অনন্ত লুপে প্রবেশ করেছিল।
- রান উইন্ডোতে থাকা 'Rerun failed tests' কমান্ডটি ব্যবহার করলে মাঝে মাঝে ভুলবশত "No tests were found" বার্তাটি আসত।
- D8
invoke-virtualইনস্ট্যান্সগুলো সঠিকভাবে পরিচালনা করতে না পারায় একটিVerifyErrorসহ ক্র্যাশ হয়েছে:invoke-super/virtual can't be used on private method - ডেটা বাইন্ডিং কম্পাইলারটি
com.android.tools:annotationsএর একটি পুরোনো সংস্করণের উপর নির্ভর করছিল। এখন কম্পাইলারটি বেস প্রজেক্ট থেকে টুলস অ্যানোটেশনগুলো ব্যবহার করে, যদি সেগুলো উপলব্ধ থাকে। - প্রোফাইলার ব্যবহার করার সময় ফ্র্যাগমেন্ট ট্রানজিশন চলাকালীন অ্যান্ড্রয়েড স্টুডিও ক্র্যাশ করেছে।
- টেক্সট বক্স সহ একটি লেআউট ডিবাগ করার সময় ডিবাগারটি ক্র্যাশ করেছে।
- বিশেষ অক্ষরযুক্ত কিছু ZIP ফাইল পড়তে D8 ব্যর্থ হয়েছে।
৩.১.৩ (জুন ২০১৮)
অ্যান্ড্রয়েড স্টুডিও ৩.১-এর এই আপডেটে নিম্নলিখিত বাগগুলোর সমাধান করা হয়েছে:
- লেআউট এডিটর ব্যবহার করার পর মেমরি লিকের কারণে অ্যান্ড্রয়েড স্টুডিও ধীর এবং প্রতিক্রিয়াহীন হয়ে পড়ছিল। এই আপডেটে এই সমস্যাগুলোর বেশিরভাগের সমাধান অন্তর্ভুক্ত করা হয়েছে। অতিরিক্ত মেমরি লিকগুলো সমাধানের জন্য আমরা শীঘ্রই আরেকটি আপডেট প্রকাশ করার পরিকল্পনা করছি।
- D8 দিয়ে তৈরি কিছু অ্যাপ্লিকেশন কিছু Verizon Ellipsis ট্যাবলেটে ক্র্যাশ করেছিল।
- অ্যান্ড্রয়েড ৫.০ বা ৫.১ (এপিআই লেভেল ২১ বা ২২) চালিত ডিভাইসগুলিতে D8 দিয়ে তৈরি অ্যাপ্লিকেশন ইনস্টলেশন
INSTALL_FAILED_DEXOPTত্রুটির কারণে ব্যর্থ হয়েছে। - OkHttp লাইব্রেরি ব্যবহার করা এবং D8 দিয়ে তৈরি কিছু অ্যাপ্লিকেশন Android 4.4 (API লেভেল 19) চালিত ডিভাইসগুলোতে ক্র্যাশ করেছিল।
-
com.intellij.psi.jsp.JspElementTypeক্লাসটি ইনিশিয়ালাইজ করার সময়ProcessCanceledExceptionদেখানোর কারণে অ্যান্ড্রয়েড স্টুডিও মাঝে মাঝে চালু হতে ব্যর্থ হতো।
৩.১.২ (এপ্রিল ২০১৮)
অ্যান্ড্রয়েড স্টুডিও ৩.১-এর এই আপডেটে নিম্নলিখিত বাগগুলোর সমাধান করা হয়েছে:
- কিছু ক্ষেত্রে, অ্যান্ড্রয়েড স্টুডিও বন্ধ করার সময় অনির্দিষ্টকালের জন্য আটকে যেত।
ইনস্ট্যান্ট রান সক্রিয় থাকা অবস্থায় সোর্স সেট দিয়ে কনফিগার করা বিল্ডগুলি নিম্নলিখিত বার্তা সহ ব্যর্থ হয়েছে:
"The SourceSet name is not recognized by the Android Gradle Plugin."- যখন ইনস্ট্যান্ট রান সক্রিয় ছিল, তখন রান কমান্ড দ্বারা নতুন কোটলিন প্রোজেক্টের বিল্ডগুলো চালু করা হলে তা ব্যর্থ হতো।
-
build.gradleফাইলটি সম্পাদনা করার সময়, কোনো অক্ষর টাইপ করার পর সেটি স্ক্রিনে প্রদর্শিত হতে মাঝে মাঝে একটি লক্ষণীয় বিলম্ব হচ্ছিল। প্রচুর সংখ্যক মডিউল বা বাহ্যিক নির্ভরতাযুক্ত কিছু প্রকল্পে ডেক্সিং করার সময় বিল্ড ব্যর্থ হয়েছে এবং নিম্নলিখিত ত্রুটি বার্তাটি দেখা গেছে:
"RejectedExecutionException: Thread limit exceeded replacing blocked worker"- D8 প্রধান DEX তালিকার গণনায় কিছু রিফ্লেক্টিভ ইনভোকেশন বিবেচনা করা হচ্ছিল না।
এই আপডেটে এমন কিছু পরিবর্তনও আনা হয়েছে, যা কিছু ক্ষেত্রে গ্রেডল (Gradle) থেকে লিন্ট চেক চালানোকে আরও দ্রুত করে তোলে।
৩.১.১ (এপ্রিল ২০১৮)
অ্যান্ড্রয়েড স্টুডিও ৩.১-এর এই আপডেটে নিম্নলিখিত বাগগুলোর সমাধান করা হয়েছে:
কিছু ক্ষেত্রে, যখন অ্যান্ড্রয়েড স্টুডিও ৩.০-তে তৈরি কোনো প্রজেক্ট অ্যান্ড্রয়েড স্টুডিও ৩.১-এ প্রথমবারের মতো খোলা হতো, তখন রান/ডিবাগ কনফিগারেশন- এর 'বিফোর লঞ্চ' এলাকা থেকে গ্রেডল-অ্যাওয়ার মেক টাস্কটি সরিয়ে দেওয়া হয়েছিল। এর ফলে, রান বা ডিবাগ বোতামে ক্লিক করলে প্রজেক্টগুলো বিল্ড হতো না, যা ফলস্বরূপ ইনস্ট্যান্ট রান ব্যবহার করার সময় ভুল APK ডেপ্লয়মেন্ট এবং ক্র্যাশের মতো সমস্যার কারণ হতো।
এই সমস্যা সমাধানের জন্য, অ্যান্ড্রয়েড স্টুডিও ৩.১.১ সেইসব প্রোজেক্টের রান কনফিগারেশনে গ্রেডল-অ্যাওয়ার মেক টাস্কটি যোগ করে, যেগুলিতে এই এন্ট্রিটি অনুপস্থিত। প্রোজেক্ট লোড হওয়ার পর প্রথম গ্রেডল সিঙ্কের পরে এই পরিবর্তনটি ঘটে।
- অ্যাডভান্সড প্রোফাইলিং চালু থাকলে, টেক্সট বক্সসহ কোনো লেআউট ডিবাগ করার সময় ডিবাগারটি ক্র্যাশ করে।
- আপনি 'Build Variants'-এ ক্লিক করার পর অ্যান্ড্রয়েড স্টুডিও ফ্রিজ হয়ে গেছে।
- AAR (অ্যান্ড্রয়েড আর্কাইভ) ফাইলগুলো দুইবার এক্সট্র্যাক্ট করা হয়েছিল, একবার গ্রেডল সিঙ্ক প্রক্রিয়ার সময় এবং আরেকবার গ্রেডল বিল্ড প্রক্রিয়ার সময়।
- SVG ফাইল থেকে ইম্পোর্ট করা কিছু ভেক্টর ড্রয়েবলে উপাদান অনুপস্থিত ছিল।
-
compileডিপেন্ডেন্সি কনফিগারেশন বাতিল সংক্রান্ত সতর্কবার্তাটিimplementationএবংapiকনফিগারেশন বিষয়ে আরও উন্নত নির্দেশনা দিয়ে আপডেট করা হয়েছে।compileকনফিগারেশন ব্যবহার থেকে সরে আসার বিস্তারিত তথ্যের জন্য, নতুন ডিপেন্ডেন্সি কনফিগারেশনগুলোর ডকুমেন্টেশন দেখুন।
কোডিং/আইডিই
ইন্টেলিজ 2017.3.3
2017.3.3 রিলিজের মাধ্যমে ইন্টেলিজ আইডিয়া থেকে প্রাপ্ত উন্নতিগুলো দিয়ে অ্যান্ড্রয়েড স্টুডিও আইডিই-এর মূল অংশটি আপডেট করা হয়েছে। এই উন্নতিগুলোর মধ্যে রয়েছে কালেকশন ও স্ট্রিং-এর জন্য উন্নততর কন্ট্রোল ফ্লো অ্যানালাইসিস, উন্নত নালিবিলিটি ইনফারেন্স, নতুন কুইক ফিক্স এবং আরও অনেক কিছু।
বিস্তারিত জানতে, IntelliJ IDEA সংস্করণ 2017.2 ও 2017.3 -এর জন্য JetBrains রিলিজ নোট, এবং সেইসাথে বাগ-ফিক্স আপডেটের জন্য JetBrains রিলিজ নোট দেখুন।
Room-এর মাধ্যমে SQL সম্পাদনার উন্নতি
যখন আপনি Room ডাটাবেস লাইব্রেরি ব্যবহার করেন, তখন SQL সম্পাদনার ক্ষেত্রে বেশ কিছু উন্নত সুবিধার সদ্ব্যবহার করতে পারেন:
- একটি
Queryভেতরের কোড কমপ্লিশন SQL টেবিল (এনটিটি), কলাম, কোয়েরি প্যারামিটার, অ্যালিয়াস, জয়েন, সাবকোয়েরি এবং WITH ক্লজ বুঝতে পারে। - SQL সিনট্যাক্স হাইলাইটিং এখন কাজ করে।
- আপনি SQL-এ কোনো টেবিলের নামের উপর রাইট-ক্লিক করে সেটির নাম পরিবর্তন করতে পারেন, যা সংশ্লিষ্ট জাভা বা কোটলিন কোডকেও নতুন করে লিখে দেয় (উদাহরণস্বরূপ, কোয়েরির রিটার্ন টাইপ সহ)। নাম পরিবর্তন বিপরীত দিকেও কাজ করে, তাই কোনো জাভা ক্লাস বা ফিল্ডের নাম পরিবর্তন করলে তা সংশ্লিষ্ট SQL কোডকেও নতুন করে লিখে দেয়।
- Find usages ব্যবহার করার সময় SQL-এর ব্যবহারবিধি দেখানো হয় (রাইট-ক্লিক করে কনটেক্সট মেনু থেকে Find usages নির্বাচন করুন)।
- জাভা বা কোটলিন কোডে কোনো SQL এনটিটির ডিক্লারেশনে যেতে, আপনি কন্ট্রোল (ম্যাকে কমান্ড) চেপে ধরে এনটিটিটির উপর ক্লিক করতে পারেন।
Room-এর সাথে SQL ব্যবহারের তথ্যের জন্য, “Room ব্যবহার করে একটি স্থানীয় ডেটাবেসে ডেটা সংরক্ষণ করুন” দেখুন।
ডেটা বাইন্ডিং-এর আপডেট
এই আপডেটে ডেটা বাইন্ডিংয়ের জন্য বেশ কিছু উন্নতি অন্তর্ভুক্ত করা হয়েছে:
এখন আপনি ডেটা বাইন্ডিং এক্সপ্রেশনে একটি
LiveDataঅবজেক্টকে অবজার্ভেবল ফিল্ড হিসেবে ব্যবহার করতে পারবেন।ViewDataBindingক্লাসে এখন একটি নতুনsetLifecycle()মেথড যুক্ত করা হয়েছে, যাLiveDataঅবজেক্টগুলোকে অবজার্ভ করতে ব্যবহার করা হয়।ObservableFieldক্লাস এখন তার কনস্ট্রাক্টরে অন্যান্যObservableঅবজেক্ট গ্রহণ করতে পারে।আপনি আপনার ডেটা বাইন্ডিং ক্লাসগুলির জন্য একটি নতুন ইনক্রিমেন্টাল কম্পাইলার প্রিভিউ করতে পারেন। এই নতুন কম্পাইলারের বিশদ বিবরণ এবং এটি সক্রিয় করার নির্দেশাবলীর জন্য, ডেটা বাইন্ডিং কম্পাইলার ভি২ দেখুন।
নতুন কম্পাইলারের সুবিধাগুলো নিম্নরূপ:
- জাভা কম্পাইলারের আগে অ্যান্ড্রয়েড প্লাগইন ফর গ্রেডল দ্বারা
ViewBindingক্লাসগুলো জেনারেট করা হয়। - অ্যাপটি কম্পাইল করার সময় লাইব্রেরিগুলো তাদের তৈরি করা বাইন্ডিং ক্লাসগুলো ধরে রাখে, ফলে প্রতিবার সেগুলো নতুন করে তৈরি করতে হয় না। এটি একাধিক মডিউলযুক্ত প্রোজেক্টের পারফরম্যান্স ব্যাপকভাবে উন্নত করতে পারে।
- জাভা কম্পাইলারের আগে অ্যান্ড্রয়েড প্লাগইন ফর গ্রেডল দ্বারা
কম্পাইলার এবং গ্রেডল
D8 হলো ডিফল্ট DEX কম্পাইলার
DEX বাইটকোড তৈরির জন্য এখন ডিফল্টরূপে D8 কম্পাইলার ব্যবহার করা হয়।
এই নতুন DEX কম্পাইলারটি বেশ কিছু সুবিধা নিয়ে আসে, যার মধ্যে নিম্নলিখিতগুলো অন্তর্ভুক্ত:
- দ্রুততর ডেক্সিং
- কম মেমরি ব্যবহার
- উন্নত কোড জেনারেশন (উন্নত রেজিস্টার অ্যালোকেশন, স্মার্টার স্ট্রিং টেবিল)
- কোড স্টেপ-থ্রু করার সময় আরও ভালো ডিবাগিং অভিজ্ঞতা।
এই সুবিধাগুলো পেতে আপনার কোড বা ডেভেলপমেন্ট ওয়ার্কফ্লোতে কোনো পরিবর্তন করার প্রয়োজন নেই, যদি না আপনি আগে থেকে ম্যানুয়ালি D8 কম্পাইলারটি নিষ্ক্রিয় করে থাকেন।
যদি আপনি আপনার gradle.properties ফাইলে android.enableD8 কে false সেট করে থাকেন, তাহলে হয় ওই ফ্ল্যাগটি মুছে ফেলুন অথবা এটিকে true সেট করুন:
android.enableD8=true
বিস্তারিত জানতে নতুন DEX কম্পাইলার দেখুন।
ক্রমবর্ধমান চিনি অপসারণ
যেসব প্রোজেক্টে জাভা ৮-এর ল্যাঙ্গুয়েজ ফিচার ব্যবহার করা হয়, সেগুলোতে ইনক্রিমেন্টাল ডিসুগারিং ডিফল্টভাবে সক্রিয় থাকে, যা বিল্ড টাইম উন্নত করতে পারে।
ডিসুগারিং সিনট্যাকটিক সুগারকে এমন একটি রূপে রূপান্তরিত করে যা কম্পাইলার আরও দক্ষতার সাথে প্রক্রিয়া করতে পারে।
আপনার প্রোজেক্টের gradle.properties ফাইলে নিম্নলিখিতটি উল্লেখ করে আপনি ইনক্রিমেন্টাল ডিসুগারিং নিষ্ক্রিয় করতে পারেন:
android.enableIncrementalDesugaring=false
সরলীকৃত আউটপুট উইন্ডো
গ্রেডল কনসোলকে বিল্ড উইন্ডো দ্বারা প্রতিস্থাপন করা হয়েছে, যেটিতে সিঙ্ক এবং বিল্ড ট্যাব রয়েছে।
নতুন, সরলীকৃত বিল্ড উইন্ডোটি কীভাবে ব্যবহার করতে হয় সে সম্পর্কে বিস্তারিত জানতে, বিল্ড প্রক্রিয়া পর্যবেক্ষণ করুন (Monitor the build process) দেখুন।
ব্যাচ আপডেট এবং ইনডেক্সিং কনকারেন্সি
Gradle সিঙ্ক এবং IDE ইনডেক্সিং প্রক্রিয়া এখন অনেক বেশি কার্যকর, ফলে বহু অপ্রয়োজনীয় ইনডেক্সিং অপারেশনে নষ্ট হওয়া সময় কমে এসেছে।
C++ এবং LLDB
আমরা C++ ডেভেলপমেন্টের কোডিং, সিঙ্কিং, বিল্ড এবং ডিবাগিং পর্যায়ে গুণমান ও কর্মক্ষমতার অনেক উন্নতি করেছি। এই উন্নতিগুলোর মধ্যে নিম্নলিখিত বিষয়গুলো অন্তর্ভুক্ত:
আপনি যদি বড় C++ প্রজেক্ট নিয়ে কাজ করেন, তাহলে সিম্বল তৈরিতে ব্যয়িত সময়ের উল্লেখযোগ্য উন্নতি লক্ষ্য করবেন। বড় প্রজেক্টের ক্ষেত্রে সিঙ্ক টাইমও অনেক কমে যায়।
ক্যাশে করা ফলাফলগুলোর আরও জোরালো পুনঃব্যবহারের মাধ্যমে CMake-এর সাথে বিল্ড ও সিঙ্ক করার সময় পারফরম্যান্স উন্নত করা হয়েছে।
আরও বেশি C++ ডেটা স্ট্রাকচারের জন্য ফরম্যাটার ("সুন্দর প্রিন্টার") যুক্ত করার ফলে LLDB আউটপুট পড়া আরও সহজ হয়েছে।
LLDB এখন শুধুমাত্র অ্যান্ড্রয়েড ৪.১ (এপিআই লেভেল ১৬) এবং এর পরবর্তী সংস্করণগুলোতে কাজ করে।
দ্রষ্টব্য: অ্যান্ড্রয়েড স্টুডিও ৩.০ বা তার উচ্চতর সংস্করণে নেটিভ ডিবাগিং ৩২-বিট উইন্ডোজে কাজ করে না। আপনি যদি ৩২-বিট উইন্ডোজ ব্যবহার করেন এবং নেটিভ কোড ডিবাগ করার প্রয়োজন হয়, তবে অ্যান্ড্রয়েড স্টুডিও ২.৩ ব্যবহার করুন।
কোটলিন
কোটলিন সংস্করণ ১.২.৩০-এ আপগ্রেড করা হয়েছে।
অ্যান্ড্রয়েড স্টুডিও ৩.১-এ কোটলিন সংস্করণ ১.২.৩০ অন্তর্ভুক্ত রয়েছে।
এখন কমান্ড-লাইন লিন্ট চেকের মাধ্যমে কোটলিন কোড বিশ্লেষণ করা হচ্ছে।
এখন কমান্ড লাইন থেকে lint চালালে আপনার Kotlin ক্লাসগুলো বিশ্লেষণ করা হয়।
আপনি যে প্রতিটি প্রজেক্টে লিন্ট (lint) চালাতে চান, সেটির টপ-লেভেল build.gradle ফাইলে গুগলের মেভেন (Maven) রিপোজিটরি অবশ্যই অন্তর্ভুক্ত করতে হবে। অ্যান্ড্রয়েড স্টুডিও ৩.০ এবং তার পরবর্তী সংস্করণগুলিতে তৈরি প্রজেক্টগুলির জন্য মেভেন রিপোজিটরিটি আগে থেকেই অন্তর্ভুক্ত থাকে।
পারফরম্যান্স টুলস
সিপিইউ প্রোফাইলার দিয়ে নমুনা নেটিভ C++ প্রসেস
সিপিইউ প্রোফাইলার-এ এখন আপনার অ্যাপের নেটিভ থ্রেডগুলোর স্যাম্পল করা ট্রেস রেকর্ড করার জন্য একটি ডিফল্ট কনফিগারেশন অন্তর্ভুক্ত রয়েছে। এই কনফিগারেশনটি ব্যবহার করতে, আপনার অ্যাপটিকে অ্যান্ড্রয়েড ৮.০ (এপিআই লেভেল ২৬) বা তার উচ্চতর সংস্করণে চালিত কোনো ডিভাইসে ডেপ্লয় করুন এবং তারপর সিপিইউ প্রোফাইলারের রেকর্ডিং কনফিগারেশন ড্রপডাউন মেনু থেকে ‘স্যাম্পলড (নেটিভ)’ নির্বাচন করুন। এরপর, আপনি স্বাভাবিকভাবে যেভাবে করেন, সেভাবেই একটি ট্রেস রেকর্ড ও পরীক্ষা করুন ।
একটি রেকর্ডিং কনফিগারেশন তৈরি করার মাধ্যমে আপনি স্যাম্পলিং ইন্টারভালের মতো ডিফল্ট সেটিংস পরিবর্তন করতে পারেন।
আপনার জাভা থ্রেড ট্রেসিং-এ ফিরে যেতে, স্যাম্পলড (জাভা) অথবা ইন্সট্রুমেন্টেড (জাভা) কনফিগারেশন নির্বাচন করুন।
সিপিইউ ট্রেস, মেমরি অ্যালোকেশন ফলাফল এবং হিপ ডাম্প ফিল্টার করুন
সিপিইউ প্রোফাইলার এবং মেমরি প্রোফাইলার-এ একটি সার্চ ফিচার রয়েছে, যা আপনাকে মেথড ট্রেস, মেমরি অ্যালোকেশন বা হিপ ডাম্প রেকর্ডিং থেকে প্রাপ্ত ফলাফল ফিল্টার করার সুযোগ দেয়।

অনুসন্ধান করতে, ফিল্টার-এ ক্লিক করুন।
পেনের উপরের ডান কোণায় আপনার প্রশ্নটি টাইপ করুন এবং এন্টার চাপুন।
টিপস: আপনি Control + F (Mac-এ Command + F) চেপেও সার্চ ফিল্ডটি খুলতে পারেন।
সিপিইউ প্রোফাইলারের ফ্লেম চার্ট ট্যাবে, আপনার সার্চ কোয়েরির সাথে সম্পর্কিত মেথডগুলো অন্তর্ভুক্ত থাকা কল স্ট্যাকগুলো হাইলাইট করা হয় এবং চার্টের বাম দিকে সরিয়ে আনা হয়।
মেথড, ক্লাস বা প্যাকেজের নাম দিয়ে ফিল্টার করার বিষয়ে আরও তথ্যের জন্য, “মেথড ট্রেস রেকর্ড ও পরিদর্শন করুন” দেখুন।
নেটওয়ার্ক প্রোফাইলারের অনুরোধ ট্যাব
নেটওয়ার্ক প্রোফাইলার-এ এখন একটি 'রিকোয়েস্ট' ট্যাব অন্তর্ভুক্ত করা হয়েছে, যা নির্বাচিত সময়কালের নেটওয়ার্ক রিকোয়েস্টগুলো সম্পর্কে বিস্তারিত তথ্য প্রদান করে। পূর্ববর্তী সংস্করণগুলোতে, নেটওয়ার্ক প্রোফাইলার শুধুমাত্র নেটওয়ার্ক রেসপন্স সম্পর্কে তথ্য দিত।
নেটওয়ার্ক প্রোফাইলার-এ থ্রেড ভিউ
নেটওয়ার্ক প্রোফাইলার- এ টাইমলাইনের একটি অংশ নির্বাচন করার পর, আপনি সেই সময়কালের নেটওয়ার্ক কার্যকলাপ সম্পর্কে আরও বিস্তারিত দেখতে নিম্নলিখিত ট্যাবগুলির মধ্যে একটি নির্বাচন করতে পারেন:
- কানেকশন ভিউ : এটি অ্যান্ড্রয়েড স্টুডিও-র পূর্ববর্তী সংস্করণগুলোর মতোই তথ্য প্রদান করে—এটি আপনার অ্যাপের সমস্ত সিপিইউ থ্রেড জুড়ে টাইমলাইনের নির্বাচিত অংশে পাঠানো বা গ্রহণ করা ফাইলগুলোর তালিকা দেখায়। প্রতিটি অনুরোধের জন্য, আপনি তার আকার, প্রকার, অবস্থা এবং প্রেরণের সময়কাল পরীক্ষা করতে পারেন।
- থ্রেড ভিউ : আপনার অ্যাপের প্রতিটি সিপিইউ থ্রেডের নেটওয়ার্ক কার্যকলাপ প্রদর্শন করে। এই ভিউয়ের মাধ্যমে আপনি খতিয়ে দেখতে পারেন যে, প্রতিটি নেটওয়ার্ক অনুরোধের জন্য আপনার অ্যাপের কোন থ্রেডগুলো দায়ী।

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

লেআউট সম্পাদক
লেআউট এডিটরের প্যালেটটিতে অনেক উন্নতি করা হয়েছে:
- ভিউ এবং লেআউটের ক্যাটাগরিগুলোর পুনর্গঠন।
- ভিউ এবং লেআউটের জন্য নতুন কমন ক্যাটাগরি, যেখানে আপনি ফেভারিট কমান্ডের মাধ্যমে যোগ করতে পারবেন।
- ভিউ এবং লেআউটের জন্য অনুসন্ধান ব্যবস্থা উন্নত করা হয়েছে।
- কোনো নির্দিষ্ট ভিউ বা লেআউট এলিমেন্টের ডকুমেন্টেশন খোলার জন্য নতুন কমান্ড।
আপনি কম্পোনেন্ট ট্রি অথবা ডিজাইন এডিটরে থাকা নতুন ‘কনভার্ট ভিউ’ কমান্ডটি ব্যবহার করে একটি ভিউ বা লেআউটকে অন্য ধরনের ভিউ বা লেআউটে রূপান্তর করতে পারেন।
এখন আপনি নতুন 'Create a connection' ব্যবহার করে নির্বাচিত ভিউয়ের কাছাকাছি আইটেমগুলিতে সহজেই সীমাবদ্ধতা তৈরি করতে পারেন।
অ্যাট্রিবিউটস উইন্ডোর শীর্ষে থাকা ভিউ ইন্সপেক্টরের বাটনগুলো।
দৌড় এবং তাৎক্ষণিক দৌড়
'ডিপ্লয়মেন্ট টার্গেট নির্বাচন করুন' ডায়ালগ বক্সে থাকা 'ভবিষ্যৎ লঞ্চের জন্য একই নির্বাচন ব্যবহার করুন' অপশনটির আচরণকে আরও সামঞ্জস্যপূর্ণ করা হয়েছে। যদি 'একই নির্বাচন ব্যবহার করুন' অপশনটি সক্রিয় করা থাকে, তাহলে নির্বাচিত ডিভাইসটি সংযোগ বিচ্ছিন্ন না হওয়া পর্যন্ত, আপনি ' রান' কমান্ডটি শুধুমাত্র প্রথমবার ব্যবহার করার সময়ই ' ডিপ্লয়মেন্ট টার্গেট নির্বাচন করুন ' ডায়ালগ বক্সটি খুলবে।
অ্যান্ড্রয়েড ৮.০ (এপিআই লেভেল ২৬) বা তার চেয়ে উচ্চতর সংস্করণে চালিত কোনো ডিভাইসকে টার্গেট করার সময়, ইনস্ট্যান্ট রান অ্যাপ্লিকেশন রিস্টার্ট না করেই রিসোর্সগুলিতে পরিবর্তন প্রয়োগ করতে পারে। এটি সম্ভব কারণ রিসোর্সগুলি একটি স্প্লিট এপিকে-র মধ্যে থাকে।
এমুলেটর
অ্যান্ড্রয়েড স্টুডিও ৩.০-এর পর থেকে এমুলেটরে নতুন কী কী এসেছে ও পরিবর্তন হয়েছে, তার বিস্তারিত জানতে অ্যান্ড্রয়েড এমুলেটরের ২৭.০.২ থেকে ২৭.১.১২ সংস্করণ পর্যন্ত রিলিজ নোট দেখুন।
প্রধান উন্নতিগুলোর মধ্যে নিম্নলিখিতগুলো অন্তর্ভুক্ত:
- এমুলেটরের অবস্থা সংরক্ষণ এবং দ্রুত চালু করার জন্য কুইক বুট স্ন্যাপশট, এবং 'সেভ নাউ' কমান্ড ব্যবহার করে একটি কাস্টম স্টার্ট স্টেট সংরক্ষণ করার সুবিধা।
- উইন্ডোহীন এমুলেটর স্ক্রিন।
- অ্যান্ড্রয়েড ৮.০ (এপিআই লেভেল ২৬), অ্যান্ড্রয়েড ৮.১ (এপিআই লেভেল ২৭), এবং অ্যান্ড্রয়েড পি ডেভেলপার প্রিভিউ-এর জন্য সিস্টেম ইমেজ।
ব্যবহারকারী ইন্টারফেস এবং ব্যবহারকারীর অভিজ্ঞতার উন্নতি
আরও টুলটিপ, কিবোর্ড শর্টকাট এবং সহায়ক বার্তা
আমরা অ্যান্ড্রয়েড স্টুডিও জুড়ে বিভিন্ন স্থানে টুলটিপ এবং সহায়ক মেসেজ ওভারলে যুক্ত করেছি।
অনেক কমান্ডের কিবোর্ড শর্টকাট দেখতে, টুলটিপটি না আসা পর্যন্ত কোনো একটি বাটনের উপর মাউস পয়েন্টারটি ধরে রাখুন।
টুলস > অ্যান্ড্রয়েড মেনু সরানো হয়েছে
Tools > Android মেনুটি সরিয়ে দেওয়া হয়েছে। পূর্বে এই মেনুর অধীনে থাকা কমান্ডগুলো স্থানান্তরিত করা হয়েছে।
- অনেক কমান্ড সরাসরি টুলস মেনুর অধীনে স্থানান্তরিত করা হয়েছে।
- ' Sync project with gradle files' কমান্ডটি এখন ফাইল মেনুতে স্থানান্তরিত করা হয়েছে।
- নিম্নে বর্ণিত পদ্ধতি অনুযায়ী ডিভাইস মনিটর কমান্ডটি সরিয়ে ফেলা হয়েছে।
কমান্ড লাইন থেকে ডিভাইস মনিটর উপলব্ধ।
অ্যান্ড্রয়েড স্টুডিও ৩.১-এ, ডিভাইস মনিটরের ভূমিকা আগের চেয়ে কমে গেছে। অনেক ক্ষেত্রে, ডিভাইস মনিটরের মাধ্যমে উপলব্ধ কার্যকারিতা এখন নতুন এবং উন্নত টুল দ্বারা সরবরাহ করা হয়।
কমান্ড লাইন থেকে ডিভাইস মনিটর চালু করার নির্দেশাবলী এবং এর মাধ্যমে উপলব্ধ টুলগুলির বিশদ বিবরণের জন্য ডিভাইস মনিটর ডকুমেন্টেশন দেখুন।