Android Studio-এর সাথে Android Emulator অন্তর্ভুক্ত থাকে।
Android SDK টুলের অংশ হিসেবে ২৫.৩.০-এর আগের এমুলেটর ভার্সন ডিস্ট্রিবিউট করা হয়েছে।
আপনার কাছে লেটেস্ট ভার্সন আছে কিনা তা নিশ্চিত করতে, আপডেটের জন্য SDK ম্যানেজার চেক করুন।
Android এমুলেটরের আগের ভার্সন ডাউনলোড করতে, এমুলেটর ডাউনলোড আর্কাইভ দেখুন।
২৫.৩.০-এর আগের এমুলেটর ভার্সনের রিলিজ নোটের জন্য, Android SDK টুল রিলিজ নোট দেখুন।
Android Emulator-এর সবচেয়ে সাম্প্রতিক ভার্সনে কোন কোন সমস্যার সমাধান করা হয়েছে তা দেখতে, সমাধান করা হয়েছে এমন সমস্যা দেখুন।
পরিচিত সমস্যা ও সমস্যার সমাধানকরণের জন্য, এমুলেটর সমস্যার সমাধানকরণ দেখুন।
নেক্সট জেনারেশন Android এমুলেটর (প্রিভিউ)
Android Studio Rabbit 3 Canary 1 থেকে শুরু করে, আমাদের পরবর্তী প্রজন্মের Android Emulator-এর প্রিভিউ উপলভ্য এবং উপযুক্ত ভার্চুয়াল ডিভাইসের জন্য ডিফল্ট হিসেবে ব্যবহার করা হয়।
আমাদের পুরনো QEMU 2 ফর্ক থেকে আধুনিক আপস্ট্রিম QEMU (v11+)-এ আপগ্রেড করা হচ্ছে, নতুন ইঞ্জিন ফিচারে ইঞ্জিন/UI প্রসেস আলাদা করা হয়েছে যা আরও বেশি বিশ্বস্ততা ও পারফর্ম্যান্সের জন্য ডিজাইন করা হয়েছে।
ডেভেলপাররা এইসব সুবিধা পাবেন:
- দ্রুত বুট করার সময় এবং সিপিইউ/মেমরি ওভারহেড কমানো
- আইসোলেটেড ইঞ্জিন ও UI প্রসেস ব্যবহার করে সেশনের স্থায়িত্ব উন্নত করা হয়েছে
- আপডেট করা virtio হার্ডওয়্যার মডেল ও Vulkan গ্রাফিক্স সহ আধুনিক ভার্চুয়ালাইজেশন
শুরু করতে, API লেভেল ৩৭.০ বা তার পরবর্তী যেকোনও ভার্সনে রান করা ফোন AVD তৈরি করুন এবং Android Studio Canary থেকে এটি লঞ্চ করুন। আগে থেকে থাকা AVD এখনকার জন্য ক্লাসিক এমুলেটর ইঞ্জিনে নির্বিঘ্নে চলতে থাকবে।
37.2.12 Stable (১ অক্টোবর, ২০২৬)
[ত্রুটি সমাধান]সমস্যা #৫৩৭৮০২৯৫৯ macOS (Apple Silicon): ImageTransport MMAP সহ gRPC streamScreenshot এমুলেটর ইঞ্জিন ক্র্যাশ করে / নীরবে ফ্রেম লেখে না
[ত্রুটি সমাধান]সমস্যা #৫০৭০৭৮৫৮০ এমুলেটর macOS-কে স্লিপ মোডে যেতে বাধা দেয়
[ত্রুটি সমাধান]সমস্যা #৫০৬৪৭৫৫৮১ >২ চ্যানেল (লুপব্যাক, মাল্টি-আউটপুট) সহ অডিও ইন্টারফেস ব্যবহার করার সময় macOS-এ বাকি থাকা অডিও ডিস্টরশন এবং স্টার্টআপ ক্র্যাকলিং সমাধান করা হয়েছে
37.1.11 Stable (৩০ জুলাই, ২০২৬)
Android Emulator হাইপারভাইজার ড্রাইভার (AEHD) ৩১ ডিসেম্বর, ২০২৬-এ বন্ধ হয়ে যাবে। ট্রানজিশনে সাহায্য করার জন্য, Android Studio এখন Windows ব্যবহারকারীদের AEHD থেকে Windows Hypervisor Platform (WHPX)-এ কনভার্ট করতে সাহায্য করে। WHPX ব্যবহার করে VM অ্যাক্সিলারেশন কনফিগার করার বিষয়ে তথ্যের জন্য WHPX ব্যবহার করে VM অ্যাক্সিলারেশন কনফিগার করুন দেখুন।

Pixel 10a AVD যোগ করা হয়েছে
API 37 সিস্টেম ইমেজ চালানোর জন্য প্রয়োজনীয় নতুন Vulkan এক্সটেনশনের জন্য সহায়তা যোগ করা হয়েছে
[ত্রুটি সমাধান]সমস্যা #৩২৪৪৬৫৯৮৬ কোনও স্পেস না থাকা এমুলেটরে স্ন্যাপশট নেওয়ার সময় স্টোরেজ শেষ হয়ে যাওয়ার কোনও সমস্যা নেই
[ত্রুটি সমাধান]সমস্যা #৫২৬৬৭১৮৭২ config.ini-তে AVD RAM এবং VM হিপ সাইজ কনফিগারেশনের জন্য ইউনিট সাফিক্স (যেমন, "6G", "32M") সংক্রান্ত সহায়তা
[ত্রুটি সমাধান]সমস্যা #325814592 macOS 14-এ সমস্যা দেখা দিয়েছে যেখানে ক্যামেরা চালু করার পরে এমুলেটর ফ্রিজ হয়ে যায় এবং খুব ধীরে কাজ করে
36.6.11 Stable (২ জুন, ২০২৬)
API 37 থেকে শুরু করে, AVD-এর VM দ্বারা ব্যবহৃত ন্যূনতম মেমরি (RAM) ৪ জিবিতে উন্নীত করা হয়েছে।
Android 17 (API 37)-এর বেশি মেমরির চাহিদা পূরণ করতে, ফোনের Android ভার্চুয়াল ডিভাইসে (AVD) এখন কমপক্ষে ৪ জিবি RAM থাকা আবশ্যক। আপনার AVD-তে কম মেমরি কনফিগার করা থাকলে, এমুলেটর অটোমেটিক সেটিং ওভাররাইট করে কমপক্ষে ৪ জিবি মেমরি বরাদ্দ করবে, যাতে রানটাইম সংক্রান্ত সম্ভাব্য সমস্যা এড়ানো যায়।
কনফিগার করা যায় এমন ভার্চুয়াল সিন ব্যাকগ্রাউন্ডের জন্য এমুলেটরে "পরিবেশ" ক্যামেরা মোড যোগ করা হয়েছে। এইসব দৃশ্য AVD-এর environment.ini ফাইলে সংজ্ঞায়িত করা আছে এবং রানটাইমে ডায়নামিকভাবে রিলোড করা যেতে পারে।
স্ট্যান্ডঅ্যালোন এমুলেটরে স্ন্যাপশট প্রিভিউ, স্ন্যাপশট মুছে দেওয়ার পরেও মুছে না যাওয়ার সমস্যার সমাধান করা হয়েছে।
[ত্রুটি সমাধান]সমস্যা #৫০৬৪৭৫৫৮১ macOS-এ >২ চ্যানেল (লুপব্যাক, মাল্টি-আউটপুট) সহ অডিও ইন্টারফেস ব্যবহার করার সময় এমুলেটর অডিও মারাত্মকভাবে বিকৃত হয়
[ত্রুটি সমাধান]সমস্যা #৫১৬৪৫৫৩৭০ Hypervisor.framework API-এর মাধ্যমে ব্যবহৃত রিসোর্স ক্লিন-আপের সাথে সম্পর্কিত, এমুলেটর বন্ধ করার সময় macOS ২৬.৩-এ একটি উল্লেখযোগ্য মেমরি লিক সংক্রান্ত সমস্যার সমাধান করা হয়েছে।
36.5.11 প্যাচ (২৩ এপ্রিল, ২০২৬)
- [ত্রুটি সমাধান]সমস্যা #৪৯২২২৮০২০ Intel GPU-তে হার্ডওয়্যার/অটো গ্রাফিক্স রেন্ডারিং ব্যবহার করার সময় Android এমুলেটর কালো স্ক্রিন দেখায়
36.5.10 Stable (২ এপ্রিল, ২০২৬)
এই আপডেটে নিম্নলিখিত ফিচার ও সমস্যার সমাধান অন্তর্ভুক্ত আছে:
Android Emulator-এর মাধ্যমে মাল্টি-ডিভাইস ইন্টার্যাকশন টেস্ট করা
Android Emulator-এ এখন একটি নতুন নেটওয়ার্কিং স্ট্যাক রয়েছে যা মাল্টি-ডিভাইস টেস্টিং উন্নত করে, একই হোস্টে একাধিক AVD ইনস্ট্যান্স কানেক্ট করার জন্য ম্যানুয়াল পোর্ট ফরওয়ার্ডিংয়ের প্রয়োজনীয়তা দূর করে। AVD এখন অটোমেটিক একে অপরকে খুঁজে নিয়ে যোগাযোগ করতে পারে, যেন তারা একই ভার্চুয়াল নেটওয়ার্কে আছে। এটি Wi-Fi Direct এবং Network Service Discovery-এর মতো প্রোটোকল ব্যবহার করে পিয়ার-টু-পিয়ার ইন্টার্যাকশন নির্বিঘ্নে পরীক্ষা করার সুবিধা দেয়।
এই নতুন নেটওয়ার্কিং স্ট্যাক ডেভেলপারদের জন্য বেশ কিছু গুরুত্বপূর্ণ সুবিধা প্রদান করে:
- জিরো-কনফিগারেশন: আর ম্যানুয়ালি পোর্ট ফরওয়ার্ড করা বা adb কমান্ড স্ক্রিপ্ট করার প্রয়োজন নেই।
- নিরবচ্ছিন্ন পিয়ার-টু-পিয়ার: Wi-Fi Direct এবং নেটওয়ার্ক সার্ভিস ডিসকভারির মতো গুরুত্বপূর্ণ প্রোটোকল এমুলেটরগুলির মধ্যে কোনও সমস্যা ছাড়াই কাজ করে।
- উন্নত স্থিতিশীলতা: লিগ্যাসি স্ট্যাকে পাওয়া ডেটা লস (সমস্যা #150758736) এবং কানেকশন ড্রপ (সমস্যা #449817856)-এর মতো দীর্ঘস্থায়ী স্থিতিশীলতা সংক্রান্ত সমস্যার সমাধান করে।
শুরু করতে, Android Studio SDK Manager-এ লেটেস্ট Android Emulator ভার্সনে আপডেট করুন। আরও তথ্যের জন্য, ডকুমেন্টেশন এখানে আছে।
অতিরিক্ত ফিচার ও ত্রুটি সমাধান
Pixel 10, Pixel 10 Pro, Pixel 10 Pro XL এবং Pixel 10 Pro Fold সহ নতুন Pixel AVD যোগ করা হয়েছে
ব্যবহারকারীর পক্ষে বোঝা সহজ এমন নামে ওয়েবক্যামের তালিকা তৈরি করুন এবং Linux-এ এমন একটি সমস্যার সমাধান করুন যেখানে এমুলেটর কানেক্ট করা সব ওয়েবক্যাম শনাক্ত করতে এবং তালিকা তৈরি করতে পারেনি
[ত্রুটি সমাধান]সমস্যা #333628462 macOS-এ crashpad_handler প্রসেস অত্যধিক সিপিইউ ব্যবহার করে
36.4.10 প্যাচ (৯ মার্চ, ২০২৬)
- [ত্রুটি সমাধান]সমস্যা #৪৮৯৩৬৯০৮০ Panda 2-তে আপডেট করার পরে হোভার করার সময় TV এমুলেটরে ক্র্যাশ হওয়ার সমস্যার সমাধান করা হয়েছে
36.4.9 Stable (১০ ফেব্রুয়ারি, ২০২৬)
ইউজার ইন্টারফেসে GPU বেছে নেওয়ার প্রসেস আরও সহজ করতে, Android Emulator-এর এক্সটেন্ডেড কন্ট্রোলে এখন নির্দিষ্ট হার্ডওয়্যার ও সফ্টওয়্যার বিকল্প অন্তর্ভুক্ত করা হয়েছে। কমান্ড লাইন ব্যবহারকারীদের জন্য, '-gpu software' বিকল্প এখন আপনার সিস্টেমের জন্য উপলভ্য সেরা GLES এবং Vulkan সফ্টওয়্যার রেন্ডারিং ব্যাকএন্ড বেছে নিতে ব্যবহার করা যেতে পারে
সব প্ল্যাটফর্ম জুড়ে Vulkan-এর সাথে মানানসই করার জন্য ডিফল্ট গ্রাফিক্স সফ্টওয়্যার রেন্ডারার হিসেবে Lavapipe চালু করা হয়েছে
Vulkan-এ উন্নতি:
- এমুলেটরের সাথে বান্ডেল করা Vulkan লোডার আপডেট করা হয়েছে
- Vulkan ব্যাকএন্ডে বিভিন্ন ভুল ব্যবহারের সমস্যা সমাধান করা হয়েছে
- নতুন সিস্টেম ইমেজে গ্রাফিক্স কিউ এমুলেশন সহ systemui-তে SkiaVk ব্যবহার করার জন্য সহায়তা যোগ করা হয়েছে
- হোস্টে GL ব্যবহার বন্ধ করতে Vulkan কম্পোজিশনের জন্য অতিরিক্ত সহায়তা। XR ছবির জন্য এটি ডিফল্ট হিসেবে চালু করা থাকে এবং '-feature VulkanNativeSwapchain' কমান্ড লাইন বিকল্পের মাধ্যমে চালু করা যেতে পারে।
[ত্রুটি সমাধান]সমস্যা #৪৭১০০৮৬৫৯ অ্যাক্টিভিটি খোলা/বন্ধ করার সময় এমুলেটরের হোস্ট-সাইডে মেমরি লিক
36.4.3 Canary (৮ ডিসেম্বর, ২০২৫)
নতুন AI Glasses Emulator
আমরা অ্যাপ ডেভেলপ ও পরীক্ষা করার জন্য একটি নতুন, পরীক্ষামূলক AI Glasses এমুলেটর যোগ করেছি যা AI Glasses-এর জন্য Jetpack XR SDK-এর মাধ্যমে তৈরি করা হয়েছে। আপনি ফোন এমুলেটরের সাথে গ্লাস এমুলেটর চালাতে, তাদের পেয়ার করতে এবং গ্লাসে সাধারণ ইন্টার্যাকশন করতে পারবেন। AI Glasses এমুলেটর ইনস্টল করা এবং আপনার ডেভেলপমেন্ট এনভায়রনমেন্ট সেট-আপ করা সম্পর্কে তথ্যের জন্য ভার্চুয়াল AI Glasses ডিভাইস তৈরি করা দেখুন।
AI Glasses এমুলেটর হল একটি পরীক্ষামূলক টুল। সমস্যা হতে পারে, বিশেষ করে ফোন এমুলেটরে গ্লাস আবার পেয়ার করা এবং টাচপ্যাড UI ইন্টার্যাকশনের ক্ষেত্রে।
নতুন XR Glasses Emulator
আমরা OST (অপটিক্যাল সি থ্রু) XR গ্লাসের জন্য আগে লঞ্চ করা Android XR ইমুলেটরকে আরও উন্নত করেছি। আপনি XR গ্লাস এমুলেটর ব্যবহার করে আপনার অ্যাপের প্রিভিউ দেখতে পারেন XR গ্লাস ডিভাইসের আনুমানিক FOV এবং রেজোলিউশন সহ। XR Glasses এমুলেটর ইনস্টল করা এবং আপনার ডেভেলপমেন্ট এনভায়রনমেন্ট সেট-আপ করা সম্পর্কে তথ্যের জন্য ভার্চুয়াল XR Glasses ডিভাইস তৈরি করা দেখুন।
XR Glasses এমুলেটর এবং AI Glasses এমুলেটর হল পরীক্ষামূলক টুল। সমস্যা হতে পারে, বিশেষ করে কিছু Windows GPU এবং ড্রাইভার কনফিগারেশনে (Windows সিস্টেমের প্রয়োজনীয়তা দেখুন)।
পরিচিত সমস্যা
আপনার মতামত আমাদের উন্নতি করতে এবং ভবিষ্যতের ফিচার অগ্রাধিকার দিতে সাহায্য করবে। Android Studio বা Android Emulator-এর সাথে সম্পর্কিত সমস্যা সম্পর্কে অভিযোগ করার বিষয়ে তথ্যের জন্য সমস্যা সম্পর্কে অভিযোগ করুন দেখুন।
36.3.10 Stable (৪ ডিসেম্বর, ২০২৫)
[ত্রুটি সমাধান]সমস্যা #৪৫২৮৪৩৩২১ Android API 34 এবং তার পরবর্তী ভার্সনে এমুলেটরে বড় ফাইল পুশ করার সময় পারফর্ম্যান্স কমে যায়।
ভিডিও কোডেক জিপিইউ টেক্সচার মোডে রান করার সময় Vulkan কম্পোজিশন ক্র্যাশ সংক্রান্ত সমস্যার সমাধান করুন।
-debug-events-এর সাথে চালানোর সময় টাচস্ক্রিন ইভেন্টে এমুলেটর ক্র্যাশ করার সমস্যা সমাধান করুন।
36.2.12 প্যাচ (১৩ অক্টোবর, ২০২৫)
- সফ্টওয়্যার রেন্ডারিং মোডে একটি ভলকান অ্যাপ চালু করার সময় Windows-এ ক্র্যাশ হওয়ার সমস্যা সমাধান করা হয়েছে
36.2.11 Stable (৯ অক্টোবর, ২০২৫)
ইমুলেটর থেকে HAXM সহায়তা সরানো হয়েছে। HAXM-এর সাহায্যে AVD তৈরি করার চেষ্টা করলে, হাইপারভাইজর নেই বলে একটি ব্যানার দেখতে পাবেন এবং AEHD ইনস্টল করার জন্য অ্যাকশন লিঙ্ক দেখতে পাবেন।

HAXM আনইনস্টল করার ব্যাপারে তথ্য পেতে, HAXM আনইনস্টল করুন বিকল্প দেখুন।
ড্রাইভার ক্র্যাশ এড়াতে Intel GPU যাতে OpenGL ES 3.0 ব্যবহার করে তা নিশ্চিত করার জন্য সমাধান
[ত্রুটি সমাধান]সমস্যা #৩৪০৩২২৮৮৮ ডিভাইসে খালি জায়গা না থাকলে AVD চালু করা যাচ্ছে না
[ত্রুটি সমাধান]সমস্যা #১৫০৭৫৮৭৩৬ এমুলেটরে TCP কানেকশনে মাঝে মাঝে সিঙ্গেল-বাইট ডেটা লস
[ত্রুটি সমাধান]সমস্যা #৪৩৪৭৭৪৩৮১ i7-11850H-এ WHPX ব্যবহার করে Windows 11-এ API 36 এবং 35 (সম্ভবত আরও বেশি)-এর জন্য দ্রুত বুট করার পরে গেস্ট কার্নেল ক্র্যাশ করেছে
36.1.9 Stable (৩১ জুলাই, ২০২৫)
[ত্রুটি সমাধান]সমস্যা #৪১৯১৫৭৪২৮ ইউজারনেম বা AVD পাথে UTF-8 অক্ষর থাকলে এমুলেটর চালু নাও হতে পারে
[ত্রুটি সমাধান]সমস্যা #৪২৩৬৭০৮৩৩ btrfs ফাইল সিস্টেমে Android এমুলেটর ক্র্যাশ করে
মনে রাখবেন: X11-এ এমুলেটর লঞ্চ করার সময় কোনও সমস্যা হলে, সফ্টওয়্যার রেন্ডারিং ব্যবহার করার কথা বিবেচনা করুন। সফ্টওয়্যার রেন্ডারিং কীভাবে কনফিগার করতে হয় তার জন্য গ্রাফিক্স অ্যাক্সিলারেশন কনফিগার করুন দেখুন।
35.6.11 Stable (২৪ জুন, ২০২৫)
XR এমুলেশনের জন্য Windows ও Linux-এ AMD ও Nvidia GPU সংক্রান্ত সহায়তা উন্নত করা হয়েছে
Android Studio-তে উইন্ডো চালানোর সময় XR AVD এম্বেড করে চালানো যেতে পারে
এমুলেটরের সম্পূর্ণ ডাম্প চালু করতে Windows-এ ক্র্যাশ রিপোর্টের বিবরণ উন্নত করা হয়েছে
[ত্রুটি সমাধান]সমস্যা #৪১০৪৮৫০৪৩ Vulkan সমস্যার কারণে Android Emulator XR ডিভাইস ক্র্যাশ করে
[ত্রুটি সমাধান]সমস্যা #৩৮৮৭১৮৪১৭ libndk_translation.so বাতিল হয়ে যায় এবং Arm64AesEncode-এ ক্র্যাশ হয়
35.5.10 Stable (৬ মে, ২০২৫)
ত্রুটি মেসেজ সহ অতিরিক্ত CPU কম্প্যাটিবিলিটি চেক যোগ করা হয়েছে (যেমন: ডিস্ক স্টোরেজে পর্যাপ্ত জায়গা নেই)
Vulkan মেমোরি ম্যানেজমেন্ট ও ভুল ব্যবহারের ক্ষেত্রে সম্পর্কিত সমস্যার সমাধান করা হয়েছে
টার্মিনালে চালানোর সময় Vulkan স্ন্যাপশট সাপোর্ট চেক করা হয়েছে এবং সঠিকভাবে এড়িয়ে যাওয়া হয়েছে
VK_KHR_multiview এক্সটেনশন ও A1R5G5B5 টেক্সচার ফর্ম্যাটের জন্য সহায়তা যোগ করা হয়েছে
Pixel 9a AVD যোগ করা হয়েছে
35.4.9 Stable (২৫ ফেব্রুয়ারি, ২০২৫)
অতিথি GLES ড্রাইভার সংক্রান্ত পছন্দের জন্য এক্সটেন্ডেড কন্ট্রোলে ড্রপ-ডাউন মেনু যোগ করা হয়েছে
[ত্রুটি সমাধান]সমস্যা #৩৮৯৩৩০৭৫০ Ñ অক্ষর সহ এমুলেটরে এসএমএস পাঠালে মেসেজটি স্প্লিট হয়ে যায়
[ত্রুটি সমাধান]সমস্যা #৩৮২১৮০৪৮৮ "emuglConfig_get_vulkan_hardware_gpu_support_info" ফাংশন ক্র্যাশ করছে কারণ কোনও Vulkan ডিভাইস শনাক্ত করা যায়নি
মনে রাখবেন: Android XR Emulator শুধুমাত্র Studio-র Canary ভার্সনে উপলভ্য
35.3.11 Stable (৯ জানুয়ারি, ২০২৫)
[ত্রুটি সমাধান]সমস্যা #৩৬৮০৫৯২১১ Car Service API ব্যবহার করে VHAL-এ Android Auto OS প্রোগ্রামাটিক অ্যাক্সেস কাজ করছে না
[ত্রুটি সমাধান]সমস্যা #৩৪৮৫৯৮৫১৩ এমুলেটরে মাল্টি-থ্রেডেড লকে অপ্রয়োজনীয় থ্রেড-আনসেফ পাবলিক পদ্ধতি আছে
[ত্রুটি সমাধান]সমস্যা #৩৫৬৮৯৬৪৮৬ -feature -Vulkan-এর সাথে রান করার সময় Vulkan API কল সত্যিই বন্ধ করুন
35.4.4 Canary (১২ ডিসেম্বর, ২০২৪)
নতুন Android XR ইমুলেটর
আমরা হেডসেটের জন্য Jetpack XR SDK দিয়ে তৈরি অ্যাপ ডেভেলপ ও টেস্ট করার জন্য একটি নতুন, পরীক্ষামূলক Android XR ইমুলেটর যোগ করেছি। Android XR ইমুলেটর ইনস্টল করা এবং আপনার ডেভেলপমেন্ট এমভায়রনমেন্ট সেট-আপ করা সম্পর্কে তথ্যের জন্য Jetpack XR SDK সেট-আপ দেখুন।
Android XR ইমুলেটর হল একটি পরীক্ষামূলক টুল। আমরা আগেই আপনার সাথে এটি শেয়ার করার সিদ্ধান্ত নিয়েছি - যাতে আপনি আগেই এটি পরীক্ষা করে দেখতে পারেন। সমস্যা হতে পারে, বিশেষ করে কিছু Windows GPU এবং ড্রাইভার কনফিগারেশনে। এছাড়াও, আগে থেকে থাকা 2D মোবাইল অ্যাপের কম্প্যাটিবিলিটি টেস্টিংয়ের ক্ষেত্রেও সমস্যা হতে পারে। আপনার মতামত আমাদের ভবিষ্যতের ফিচারকে উন্নত করতে এবং অগ্রাধিকার দিতে সাহায্য করবে।
এখনও পর্যন্ত, Android XR ইমুলেটর নিম্নলিখিত HW কনফিগারেশনে পরীক্ষা করা হয়েছে:
- Mac (ARM)
- Windows 11
- nVidia GPU, ৪ জিবি vRAM, ড্রাইভার ভার্সন 553.35 বা তার পরবর্তী যেকোনও ভার্সন
- ১৬ জিবি বা তার বেশি র্যাম
- ৮টি বা তার বেশি কোর
পরিচিত সমস্যা
এমুলেটর - স্থায়িত্ব ও পারফর্ম্যান্স:
- কিছু Windows কনফিগারেশনে, বুট করার সময় বা অ্যাপ্লিকেশন চালানোর সময় ক্রিটিক্যাল সিস্টেম লক বা ক্র্যাশ হতে পারে। WHPX চালু করার জন্য Android Studio ডেভেলপার গাইড অনুসরণ করে Windows Hypervisor Platform (WHPX) চালু করা আছে কিনা তা নিশ্চিত করুন।
- সাসপেন্ড-রিজিউম সাইকেলের (যেমন, ল্যাপটপ বন্ধ করে আবার খোলা) পরে ল্যাপটপে রেসপন্স না করা AVD বা UI এলিমেন্টের মতো সমস্যা।
- "হোম স্ক্রিন মোড" থেকে "ফুল স্ক্রিন মোড"-এ অ্যাপ্লিকেশন পরিবর্তন করার সময় মাঝে মাঝে ক্র্যাশ করে
- Gemini API এখনও উপলভ্য নয়; Gemini API স্টার্টার টেমপ্লেট অ্যাপ ক্র্যাশ করবে।
এমুলেটর - ইনপুট ও আউটপুট সিমুলেট করা:
- সার্চ ও এডিট ফিল্ডের জন্য ভার্চুয়াল কীপ্যাড ফিল্ড অফ ভিউতে আংশিকভাবে দেখা যেতে পারে
মাউস ও কীবোর্ড ব্যবহার করে z-দিকনির্দেশে (স্ক্রিনের ভিতরে ও বাইরে) এলিমেন্ট সরানো যাবে না
AVD মাইক্রোফোন হোস্ট অডিও ইনপুট অস্থিরতার ফলে AVD রিবুট এবং ক্র্যাশ হতে পারে।
কখনও কখনও সাউন্ডে স্ট্যাটিক বা বিকৃত আওয়াজ হয়।
ক্যামেরা ভার্চুয়াল লিভিং রুমের বাইরে নিয়ে গেলে, রেন্ডারিং সংক্রান্ত সমস্যা দেখা যায়।
Windows কনফিগারেশন স্বাভাবিকের চেয়ে গাঢ় রঙে ডিসপ্লে করে।
macOS-এ এমুলেটর আইডল অবস্থায় রেখে স্ক্রিন লক করার পরে অডিও আর কাজ করে না। (এমুলেটর রিস্টার্ট করলে এটি রিস্টোর হয়ে যাবে।)
হোস্ট মেশিন ওয়াই-ফাই পরিবর্তন করলে নেটওয়ার্ক কানেকশন বিচ্ছিন্ন হয়ে যায়।
Caps Lock চালু করা থাকলেও, ছোট হাতের অক্ষর টাইপ করা হচ্ছে।
Mac-এ ট্র্যাকপ্যাড ব্যবহার করে স্ক্রল করার সুবিধা নির্ঝঞ্ঝাট নয়।
কিছু UI এলিমেন্টে ক্লিক-অ্যান্ড-ড্র্যাগ স্ক্রলিং ডিজাইন অনুযায়ী কাজ নাও করতে পারে। তা না হলে, স্ক্রল করার জন্য মাউস হুইল ব্যবহার করুন।
কিছু Windows সিস্টেম কনফিগারেশনে Chrome-এ অস্পষ্ট টেক্সট, UI এবং অন্যান্য সমস্যা। সম্ভাব্য সমাধান: WHP চালু করা।
এমুলেটর - প্লেন ও অ্যাঙ্কর সিমুলেট করা:
- অ্যাঙ্কর কখনও কখনও একই লোকেশনের কাছাকাছি রিস্পন করে না
- সরানো যায় এমন প্যানেল দেওয়াল বা সিলিংয়ে অ্যাঙ্কর করা নাও থাকতে পারে
- পাসথ্রু মোডে সিমুলেটেড প্লেন 3D রুমের ফিজিক্যাল লেআউটের সাথে মেলে না
- ভার্চুয়াল রুমে অবজেক্ট অ্যাঙ্কর করার জন্য সামগ্রিকভাবে সীমিত এলাকা
- Windows-এ পাসথ্রু ভিউতে ছোট দৃশ্যমান আর্টিফ্যাক্ট
- কিছু ক্ষেত্রে, অ্যাঙ্কর প্লেস করলে অ্যাপ ক্র্যাশ করতে পারে
- Windows-এ অ্যাপকে গ্রাউন্ডের কাছাকাছি নিয়ে যাওয়ার সময় অ্যাপের উপরে কালো লাইন দেখা যেতে পারে
ইমুলেটর - অন্যান্য:
- এমুলেটর শুধুমাত্র "স্ট্যান্ডঅ্যালোন" মোডে শুরু হয়। "এম্বেড করা" মোড (এম্বেড করা UI) এখনও কাজ করে না।
- Windows-এ এমুলেটরে অ্যাকাউন্ট দিয়ে লগ-ইন করলে এমুলেটর কাজ করা বন্ধ করে দিতে পারে
- ছোট বড় করার পরে উইন্ডোর UI কন্টেন্ট অদৃশ্য হয়ে যেতে পারে (সমাধান: "হোম" বোতাম প্রেস করুন)
- JXRCore ActivityPanelTest অ্যাপে সেকেন্ডারি প্যানেল প্রথমে দেখানো হয় না
- দীর্ঘ সময় পরে সিস্টেম সেটিংস থেকে দ্রুত সেটিংস আইটেম অদৃশ্য হয়ে যেতে পারে।
- এমুলেটর UI প্রথমে স্ক্রিন অঞ্চলের বাইরে দেখা যেতে পারে। যদি তাই হয়, তাহলে এমুলেটর উইন্ডোর সাইজ সামান্য অ্যাডজাস্ট করুন এবং এটি আগের জায়গায় ফিরে আসবে।
- Windows-এ Chrome রিমোট ডেস্কটপ ব্যবহার করার সময় এমুলেটর চালু নাও হতে পারে
- OpenXR এখনও পর্যন্ত এমুলেটরে কাজ করে না এবং OpenXR অ্যাপ এমুলেটর ক্র্যাশ করতে পারে
- Windows-এ Android Studio-র এক্সটেন্ডেড সেটিংস ব্যবহার করে ত্রুটির প্রতিবেদন জমা দেওয়ার সময় খুব কম ক্ষেত্রে সমস্যা হয়
- Mac-এ কার্সরটি "ফিরে যান" আইকনের কাছাকাছি না আনা পর্যন্ত সেটিংস অ্যাপে আইকনটি সঠিকভাবে দেখা যায় না
- কিছু ক্ষেত্রে, XR টেমপ্লেট প্রোজেক্টের অংশ হিসেবে "বেসলাইন প্রোফাইল" মডিউল ব্যবহার করার সময় বিল্ডিংয়ে সমস্যা হতে পারে
- "XR টকব্যাক" অ্যাক্সেসিবিলিটি এখনও পর্যন্ত এমুলেটরে আংশিকভাবে ইন্টিগ্রেট করা হয়েছে
Scene Viewer অ্যাপ:
- Scene Viewer-এর মধ্যে এলিমেন্ট সরালে এটি ক্র্যাশ করতে পারে। এই সমস্যা এড়াতে, এলিমেন্ট সরানোর চেষ্টা করার আগে মাথার পজিশন তার প্রাথমিক পজিশন থেকে সামান্য দূরে সরান (যেমন, প্যান, ডলি, WASD ইত্যাদি ব্যবহার করে)।
- 3D মডেলের আসল সাইজ স্কেলের ন্যূনতম ও সর্বাধিক সীমার (বর্তমানে যথাক্রমে ২০ সেমি ও ৭০ মি সেট করা আছে) চেয়ে কম বা বেশি হলে ১:১ আসল সাইজ ফিচার সঠিকভাবে কাজ করবে না
- লোড হওয়ার পরে 3D মডেলটি প্রথম ফ্রেমে জাম্প করতে পারে
35.2.10 (১ অক্টোবর, ২০২৪)
- Pixel 9, Pixel 9 Pro, Pixel 9 Pro XL ও Pixel 9 Pro Fold সহ নতুন Pixel AVD যোগ করা হয়েছে
- Vanilla Ice Cream (API 35)-এর জন্য নতুন ট্যাবলেট সিস্টেম ইমেজ যোগ করা হয়েছে
৩৫.১.২০ (২৯ আগস্ট, ২০২৪)
- Pixel 8a AVD যোগ করা হয়েছে
- ফোল্ডেবল ডিভাইসের জন্য বিভিন্ন সমস্যার সমাধান
- Qt আপডেট এবং Qt সম্পর্কিত ক্র্যাশ ও হ্যাং হওয়ার সমস্যার সমাধান
- [ত্রুটি সমাধান] Vulkan ব্যবহার করে এমন অ্যাপ্লিকেশনের সাথে Windows-এ ক্র্যাশ এবং ফ্রিজ হওয়ার সমস্যার সমাধান।
৩৪.২.১৬ (৯ জুলাই, ২০২৪)
- [ত্রুটি সমাধান] Pixel Fold-এ ভাঁজ করা/ভাঁজ খোলার সময় UI ফ্রিজ হয়ে যাওয়া
- [ত্রুটি সমাধান] Mac M1-এ API 35-এর পরিবর্তে Android ভ্যানিলা আইস ক্রিম প্রিভিউ হিসেবে Android ভার্সনের ভুল ডিসপ্লে।
- [ত্রুটি সমাধান] সমস্যা #২৯৬১৬২৬৬১: HasSystemFeature FEATURE_SENSOR_HINGE_ANGLE, Pixel C ট্যাবলেট এমুলেটরে সত্য রিটার্ন করে
৩৪.২.১৫ (৩১ মে, ২০২৪)
- সোয়্যাঙ্গেল মোড ও বিজ্ঞাপনদাতা ক্লিনআপ সম্পর্কিত বিভিন্ন ক্র্যাশ সংক্রান্ত সমস্যার সমাধান
৩৪.২.১৪ (২০ মে, ২০২৪)
Android Studio Jellyfish Stable Patch 1-এর সাথে পরীক্ষা করা হয়েছে।
- [ত্রুটি সমাধান] এম্বেড করা এমুলেটরে স্ন্যাপশট কখনও কখনও হ্যাং হয়ে যায়
- [ত্রুটি সমাধান] স্ন্যাপশটে 'না' এবং 'বাতিল করুন' বোতাম সঠিকভাবে কাজ করছে না
- [ত্রুটি সমাধান] ডিরেকশনাল প্যাড বোতাম কাজ করছে না
- [ত্রুটি সমাধান] Windows-এ দেখা যাওয়া সমস্যার সমাধান করা হয়েছে। ANGLE-এর সাথে GPU মোড ব্যবহার করার সময় কিছু পরিস্থিতিতে এমুলেটর চালু করা যাচ্ছিল না এবং লগে "GL এমুলেশন শুরু করা যায়নি" ত্রুটি মেসেজ দেখা যাচ্ছিল। মনে রাখবেন,
-gpu swangle_indirectবিকল্প সহ কমান্ড লাইনের মাধ্যমে এমুলেটর চালু করলে, এই ভার্সনে এখনও এই সমস্যা হতে পারে। আপনি যদি এখনও এই ভার্সনের সাথে সফ্টওয়্যার গ্রাফিক্স রেন্ডারিং সহ Windows-এ কমান্ড লাইন ব্যবহার করে এমুলেটর শুরু করতে চান, তাহলে-gpu swiftshader_indirectব্যবহার করুন - [ত্রুটি সমাধান] কীবোর্ডে লোকেশন শর্টকাট এমন ম্যাপ লোড করে যা ব্যবহার করা যায় না
- [ত্রুটি সমাধান] লোকেশন সেট করার সময়, "রুট সেভ করুন" ডায়ালগটি নেই
৩৪.২.১৩ (৩০ এপ্রিল, ২০২৪)
Android Studio Jellyfish Stable-এর সাথে পরীক্ষা করা হয়েছে।
- Qt 6.5.3-এ আপডেট করুন
- এমুলেটরের এক্সটেন্ডেড কন্ট্রোলের লোকেশন ফিচারে ব্যবহৃত Google Maps API আপডেটের জন্য কম্প্যাটিবিলিটি, যা মে মাসের শেষে ঘটবে।
- ক্র্যাশ সংক্রান্ত সমস্যার সমাধান যা অনেক বেশি প্রভাব ফেলে
- Pixel AVD-তে বিভিন্ন সমস্যার সমাধান করা হয়েছে
- সফ্টওয়্যার রেন্ডারিংয়ের জন্য ব্যবহৃত গ্রাফিক্স লাইব্রেরি আপডেট করুন
- [ত্রুটি সমাধান]সমস্যা 225541819 Chrome চালু করলে x86_64-এ এমুলেটর ক্র্যাশ করে
- [ত্রুটি সমাধান]সমস্যা 314614435
-http-proxyসুইচ ভুলভাবে পার্স করা হয়েছে
৩৪.১.২০ (১ এপ্রিল, ২০২৪)
Android Studio Iguana Stable-এর সাথে পরীক্ষা করা হয়েছে।
- [ত্রুটি সমাধান] সমস্যা #৩১৪৬১৪৪৩৫:
-http-proxyসুইচ ভুলভাবে পার্স করা সংক্রান্ত সমস্যার সমাধান করা হয়েছে
৩৪.১.১৯ (৭ মার্চ, ২০২৪)
Android Studio Iguana Stable-এর সাথে পরীক্ষা করা হয়েছে।
- [ত্রুটি সমাধান] সমস্যা #312677259: উইন্ডো ছোট বড় করার পরে এম্বেড করা এমুলেটরে স্ক্রিন ফ্রিজ হয়ে যাওয়ার সমস্যার সমাধান করা হয়েছে।
34.1.18 (২৯ ফেব্রুয়ারি, ২০২৪)
Android Studio Iguana Stable-এর সাথে পরীক্ষা করা হয়েছে।
- এগুলি সহ এমুলেটরে ডিভাইস যোগ করা হয়েছে:
- Pixel Fold
- Pixel Tablet
- Pixel 8
- Pixel 8 Pro
- Pixel 7a
- gRPC ইন্টিগ্রেশন টেস্ট: gRPC এন্ডপয়েন্ট এখন এমুলেটরের মধ্যে চলা ইন্সট্রুমেন্টেড টেস্টের জন্য উপলভ্য যা বাস্তবসম্মত পরিস্থিতি টেস্ট করতে সাহায্য করবে। এই ফিচারের মাধ্যমে ডেভেলপাররা Android ইন্সট্রুমেন্টেশন টেস্টের মধ্যে থেকে Android এমুলেটর দ্বারা হোস্ট করা gRPC এন্ডপয়েন্টের সাথে নিরাপদে ইন্টার্যাক্ট করতে পারেন।
- বিভিন্ন ধরনের ত্রুটির সমাধান
- ত্রুটি সমাধান: ফোল্ড ডিভাইসের ব্যবহারযোগ্যতায় উন্নতি
- বাগ ফিক্স: ঘোরানোর পরে এমুলেটরের পজিশন অ্যাডজাস্ট করুন
- ক্র্যাশ সংক্রান্ত সমস্যার সমাধান
33.1.24 (২৮ ডিসেম্বর, ২০২৩)
Android Studio Hedgehog Stable এবং Iguana Beta 1-এর সাথে পরীক্ষা করা হয়েছে।
- এমুলেটর ওয়েবক্যামের সমস্যা সমাধান করুন, যার ফলে mp4 ফর্ম্যাটে স্ক্রিন রেকর্ড করা যায় না।
- স্ক্রিন রেকর্ডিংয়ের সময় Pixel Fold AVD আনফোল্ড করা হলে এমুলেটর ক্র্যাশ করার সমস্যার সমাধান করা হয়েছে।
- Pixel Fold-এ আলাদা ফোন স্কিন সহ ডিটাচ করা কীবোর্ড দেখানো এবং ব্যবহার না করতে পারার সমস্যার সমাধান করা হয়েছে (Windows, Mac Intel ও Linux-এ সমাধান করা হয়েছে)
- স্ট্যান্ডঅ্যালোন মোডে ভার্চুয়াল সেন্সরের অ্যাপিয়ারেন্সে গ্লিচ ঠিক করা (Windows, Mac Intel ও Linux-এ ঠিক করা হয়েছে)
- কিছু ক্র্যাশ, বিশেষ করে এমুলেটর বন্ধ করার সময়, সমাধান করা হয়েছে
33.1.23 (৩০ নভেম্বর, ২০২৩)
Android Studio Giraffe Patch 4 এবং Hedgehog Stable-এর সাথে পরীক্ষা করা হয়েছে।
- Pixel Fold ডিভাইস আরও ভালোভাবে এমুলেট করার জন্য নতুন ফোল্ডেবল ইমপ্লিমেন্টেশন, লেটেস্ট API 34-এর সাথে কাজ করে
- গ্রাফিক্স ব্যাকএন্ড আপগ্রেড: আমরা গ্রাফিক্স ব্যাকএন্ডের জন্য gfxstream প্রোটোকল প্রয়োগ করেছি, এই উন্নতি আপনার সিস্টেমের সামগ্রিক গ্রাফিক্স পারফর্ম্যান্স এবং স্থিতিশীলতা বাড়ায়। এছাড়াও, API 34 সহ সিস্টেম ইমেজ থেকে শুরু করে Vulkan 1.3-এর জন্য সহায়তা চালু করা হচ্ছে
- ফিচার রিকোয়েস্ট: পিঞ্চ-টু-জুম জেসচার বন্ধ করার বিকল্প বা এর হটকী আবার অ্যাসাইন করা
- [ত্রুটি সমাধান] সমস্যা #৩০২৫৬২৯৬২ MacOS sonoma ব্যবহার করার সময় এমুলেটর ওয়েবক্যাম ক্র্যাশ করার সমস্যার সমাধান করা হয়েছে
- [ত্রুটি সমাধান] সমস্যা #২৯৩৫০৩৮৭১ এমুলেটর রিস্টার্ট করার সময় 'মাইক্রোফোন' সেটিংস সেভ না হওয়ার সমস্যার সমাধান করা হয়েছে
- [ত্রুটি সমাধান] সমস্যা #২৭০৩৮৬৩১৪ অ্যানিমেশন সংক্রান্ত সমস্যার সমাধান করা হয়েছে যেখানে AVD স্ক্রিন মিনিমাইজ করার পরেও সাইডবার খোলা থাকে
- [ত্রুটি সমাধান] সমস্যা #১৫৪৮৯৬৭৭৫ ত্রুটি জমা দেওয়ার টুল সংক্রান্ত সমস্যার সমাধান
৩২.১.১৫ (২৯ আগস্ট, ২০২৩)
Android Studio Giraffe Patch 1 এবং Hedgehog Canary 16-এর সাথে পরীক্ষা করা হয়েছে।
- AAE এমুলেটরে সেন্সরের জন্য GAS HW সংক্রান্ত প্রয়োজনীয়তা মেনে চলুন
- [ত্রুটি সমাধান] সমস্যা #২৬৬২০১২০৮ API ৩৩-এ হিব্রু এসএমএস পাঠানো যায়নি
- [ত্রুটি সমাধান] সমস্যা #২৫৭০৯৭৪০৪ API ২৯ ও ৩০-এ হোস্ট জেগে ওঠার পরে এমুলেটর সঠিক সময় দেখায় না
- [ত্রুটি সমাধান] সমস্যা #২২৮২০১৮৯৯ Android Emulator এক্সটেন্ডেড কন্ট্রোলের মধ্যে Google Maps দেখা যাচ্ছে না
32.1.14 (২৭ জুন, ২০২৩)
Android Studio Hedgehog Canary 8, Giraffe Beta 5 এবং Flamingo Stable-এর সাথে পরীক্ষা করা হয়েছে।
- এমুলেটর ক্যামেরার ওরিয়েন্টেশন ও বিকৃতি সংক্রান্ত সমস্যার সমাধান করুন।
- [ত্রুটি সমাধান] সমস্যা #২৫৭০৯৭৪০৪ "হোস্ট জেগে ওঠার পরে এমুলেটর সঠিক সময় দেখায় না"। এই সমস্যাটি এখনও API 29 এবং API 30-এর জন্য পুনরুৎপাদনযোগ্য।
- [ত্রুটি সমাধান] সমস্যা #২৪৩৪৫৬৫৮২ "API 30-এর পরে Android রিলিজ Mac M1 মেশিনে এমুলেটরে সঠিকভাবে শুরু নাও হতে পারে"
32.1.13 (২২ মে, ২০২৩)
Android Studio Hedgehog Canary 2, Giraffe Beta 1 এবং Flamingo Stable-এর সাথে পরীক্ষা করা হয়েছে।
- Pixel Fold ও Pixel Tablet AVD-এর জন্য সহায়তা যোগ করুন।
- gLinux ক্র্যাশ সংক্রান্ত সমস্যার সমাধান করা।
- [ত্রুটি সমাধান] সমস্যা #২১৫২৩১৬৩৬ "API 30-এর উপরে API সহ এমুলেটর Intel 12th gen প্রসেসরে কাজ করছে না"।
- [ত্রুটি সমাধান] সমস্যা #২৭৫৩৯৭৯০৫ এমুলেটরের ভিতরে ও বাইরে কার্সর ফোকাস বারবার সরানোর সময় Android Emulator M1-এ ক্র্যাশ হওয়ার উচ্চ সম্ভাবনা।
- নতুন এমুলেটরের ক্র্যাশ রিপোর্ট থাকলে, AVD লঞ্চ করার সময় পরিচিত সমস্যা। আরও তথ্যের জন্য এমুলেটর সংক্রান্ত সমস্যার সমাধান দেখুন।
৩২.১.১২ (২১ মার্চ, ২০২৩)
Android Studio Giraffe Canary 10, Flamingo RC এবং Electric Eel Patch 2-এর সাথে পরীক্ষা করা হয়েছে।
- [ত্রুটি সমাধান] সমস্যা #২৬৭৬৪৭৩২৩ Android Studio থেকে চালু করা ইমুলেটরে নেটওয়ার্ক কাজ করে না
- [ত্রুটি সমাধান] সমস্যা #২৬৮৪৯৮৬৮৬ এমুলেটর স্ক্রিন ফ্লিকার করছে
- [ত্রুটি সমাধান] সমস্যা #২৭০০৩৪৮২৪ ভার্সন ৩৩.১.১-এ আপডেট করার পরে এমুলেটরের পারফর্ম্যান্স কমে গেছে
- [ত্রুটি সমাধান] সমস্যা #২২৫৫৪১৮১৯ Chrome চালু করলে x86_64-এ এমুলেটর ক্র্যাশ করে
- [ত্রুটি সমাধান] সমস্যা #২৫৭০৯৭৪০৪ হোস্ট জেগে ওঠার পরে এমুলেটর সঠিক সময় দেখায় না
- Apple M1 ডিভাইসের জন্য ক্র্যাশ রিপোর্টিং যোগ করুন
32.1.11 (৮ ফেব্রুয়ারি, ২০২৩)
Android Studio Giraffe Canary 2, Flamingo Beta 1 এবং Electric Eel Patch 1-এর সাথে পরীক্ষা করা হয়েছে।
- নেটওয়ার্ক স্পিড অপ্টিমাইজেশন
- এম্বেড করা ইমুলেটরে মাউস কাজ করে
- Virtio-snd-এ করা উন্নতি
- ইনস্টল করার সময় Android Emulator আনজিপ করার সময় সিমলিঙ্কের ব্যবহার বন্ধ করুন
- ইমুলেটর-চেক ক্র্যাশ হওয়া সংক্রান্ত সমস্যার সমাধান করুন
৩১.৩.১৪ (১৩ ডিসেম্বর, ২০২২)
Android Studio Dolphin, Electric Eel RC1 এবং Flamingo Canary 9-এর সাথে পরীক্ষা করা হয়েছে।
- [ত্রুটি সমাধান] Play Store-এ লগ-ইন করার সময় AVD ক্র্যাশ হওয়ার সমস্যার সমাধান করা হয়েছে।
৩১.৩.১৩ (২৭ অক্টোবর, ২০২২)
Android Studio Dolphin, Electric Eel Beta 2 এবং Flamingo Canary 5-এর সাথে পরীক্ষা করা হয়েছে।
- [ত্রুটি সমাধান] সমস্যা #২৪৯৯৪৮৩৩৮: টাইম জোন প্যারামিটার কাজ করছে না
- [ত্রুটি সমাধান] সমস্যা #২৪৯৩৬৬৫৪৩: API ৩১-এর পরে এমুলেটর -dns-server বিকল্প কাজ করে না
৩১.৩.১২ (১০ অক্টোবর, ২০২২)
Android Studio Dolphin এবং Electric Eel Beta 1-এর সাথে পরীক্ষা করা হয়েছে।
এই আপডেটে নিম্নলিখিত উন্নতি ও সমস্যার সমাধান অন্তর্ভুক্ত আছে:
- [ত্রুটি সমাধান] সমস্যা #২৪৭৮৪৩০০০: AVD রিলেটিভ পাথ ম্যানেজ করার সময় সমস্যা
- API 24 এবং তার পরবর্তী ভার্সনের জন্য ডিস্কের সাইজ বাড়ান
31.3.11 (২৩ সেপ্টেম্বর, ২০২২)
Android Studio Dolphin এবং Electric Eel Canary 10-এর সাথে পরীক্ষা করা হয়েছে।
এই আপডেটে নিম্নলিখিত উন্নতি ও সমস্যার সমাধান অন্তর্ভুক্ত আছে:
- [ত্রুটি সমাধান] এক্সটেন্ডেড কন্ট্রোল উইন্ডোতে এম্বেড করা এমুলেটর AVD ক্র্যাশ করা
- [ত্রুটি সমাধান] সমস্যা #১৮৩১৩৯২০৭: এমুলেটর অ্যাক্টিভেট করা মাইক্রোফোনের সাথে সম্পর্কিত অডিও সমস্যা
- [ত্রুটি সমাধান] সমস্যা #২২৯৭৬৪০২৪: AVD স্টিকি টাচ সংক্রান্ত ত্রুটি যার ফলে UI-এর আচরণে সমস্যা হয়
- [ত্রুটি সমাধান] Mac M1-এ API 33 AVD লঞ্চ করার সময় সমস্যা।
- [ত্রুটি সমাধান] সমস্যা #২৪৩০৫৩৪৭৯: এমুলেটর আপডেট করার পরে নেটওয়ার্কের স্পিড কমে যাওয়া
- [ত্রুটি সমাধান] সমস্যা #২৪৪৬১৭৬২৭: Windows ও Linux-এ Maps লোকেশন কাজ করছে না
- [ত্রুটি সমাধান] সমস্যা #২৩২৯৭১৭৯৬: এক্সটেন্ডেড কন্ট্রোল > ফোন পৃষ্ঠায় "ডিভাইসে কল করুন" বোতাম কাজ করছে না
- Android Emulator-কে minigbm-এ আপডেট করুন
- Python3-এ বিল্ড স্ক্রিপ্টের মাইগ্রেশন
৩১.৩.১০ (১৮ আগস্ট, ২০২২)
Android Studio Dolphin Beta 5 এবং Electric Eel Canary 9-এর সাথে পরীক্ষা করা হয়েছে।
এমুলেটরের স্ট্যান্ডঅ্যালোন ডাউনলোড এখন উপলভ্য। এই লেটেস্ট স্টেবল রিলিজের সাথে কোনও সমস্যা বা ক্র্যাশ হলে, বাগ ফাইল করুন এবং এমুলেটর ডাউনলোড আর্কাইভ থেকে আগে কাজ করছিল এমন ভার্সন ডাউনলোড করার কথা বিবেচনা করুন।
এই আপডেটে নিম্নলিখিত উন্নতি ও সমস্যার সমাধান অন্তর্ভুক্ত রয়েছে:
- Windows-এ আরও ভালো ইউনিকোড পাথ সাপোর্ট
- ইমুলেটর বন্ধ করার প্রসেস আরও ভালোভাবে ম্যানেজ করা যাতে একই AVD আবার চালু করার সময় কোনও সমস্যা না হয়।
- আপডেট করা ফোল্ডেবল AVD ডিজাইন ও ডিফল্ট সেটিংস
- Wear এমুলেটর বোতাম আপডেট করা হয়েছে
- gRPC অডিও স্ট্রিমিংয়ের উন্নতি
- রিসাইজ করা যায় এমন এমুলেটর কনসোল কমান্ড যোগ করা হয়েছে
- API 31-এর জন্য Chrome-এর সমাধান
- [ত্রুটি সমাধান] GmsCore v21.42.18-এর সাথে Google অ্যাকাউন্ট যাচাইকরণ করা যায়নি
৩১.২.১০ (২০ এপ্রিল, ২০২২)
Android Studio Dolphin Canary 8 এবং Chipmunk RC 1-এর সাথে পরীক্ষা করা হয়েছে।
এই আপডেটে নিম্নলিখিত উন্নতি ও সমস্যার সমাধান অন্তর্ভুক্ত রয়েছে:
- ফলব্যাক সহ Vulkan ফাংশন লোড করার জন্য ইউটিলিটি যোগ করুন
- [Bug Fix] Fix gcc8 build error
31.2.9 (২৩ মার্চ, ২০২২)
Android Studio Dolphin Canary 7-এর সাথে পরীক্ষা করা হয়েছে।
এই আপডেটে নিম্নলিখিত সমস্যার সমাধান করা হয়েছে:
- [ত্রুটি সমাধান] M1-এ স্ন্যাপশট সেভ করার সময় মেমরি প্রেসার উপেক্ষা করুন
৩১.২.৮ (৭ ফেব্রুয়ারি, ২০২২)
Android Studio Bumblebee প্যাচ ১ এবং Chipmunk Canary ৬-এর সাথে পরীক্ষা করা হয়েছে।
এই আপডেটে নিম্নলিখিত উন্নতি ও সমস্যার সমাধান অন্তর্ভুক্ত রয়েছে:
- [ত্রুটি সমাধান] অ্যাপে সাইন-ইন করা যাচ্ছে না
- [ত্রুটি সমাধান] সমস্যা #২১৫৩৬৮৩৫৮: Intel প্ল্যাটফর্মে "adb রিবুট" করলে "vcpu শাটডাউন অনুরোধ" সহ avd ক্র্যাশ করবে
31.2.7 (১ ফেব্রুয়ারি, ২০২২)
Android Studio Bumblebee প্যাচ ১ এবং Chipmunk Canary ৬-এর সাথে পরীক্ষা করা হয়েছে।
এই আপডেটে নিম্নলিখিত সমস্যার সমাধান করা হয়েছে:
- [ত্রুটি সমাধান] M1 মেশিনে এমুলেটর হ্যাং হয়ে যাওয়ার সমস্যা।
৩১.২.৬ (২০ জানুয়ারি, ২০২২)
Android Studio Arctic Fox, Bumblebee Beta 4 এবং Chipmunk Canary 6-এর মাধ্যমে পরীক্ষা করা হয়েছে।
এই আপডেটে নিম্নলিখিত উন্নতি ও সমস্যার সমাধান অন্তর্ভুক্ত রয়েছে:
- Wear OS এমুলেটরে Wear বোতাম যোগ করা হয়েছে।
- VHAL ট্যাবে গাড়ির সব প্রপার্টি এডিট করার সুবিধা দেওয়া হয়েছে।
- [ত্রুটি সমাধান] GmsCore v21.42.18-এর সাথে Google অ্যাকাউন্ট যাচাইকরণ ব্যর্থ হয়েছে।
- [ত্রুটি সমাধান] VirtioWifi-এর সাথে Netshaper ভালভাবে কাজ করেনি।
- [ত্রুটি সমাধান] ইভেন্ট মাউস কনসোল কমান্ড কাজ করেনি।
- স্থানীয় AVD তৈরির জন্য KVM চেক যোগ করা হয়েছে।
৩১.১.৩ (১৮ জানুয়ারি, ২০২২)
এই আপডেটে নিম্নলিখিত উন্নতি ও সমস্যার সমাধান অন্তর্ভুক্ত রয়েছে:
- Fuchsia-এর জন্য কনসোল পোর্ট চালু করা হয়েছে।
- মাল্টি-ডিসপ্লে উইন্ডোর সাইজ পরিবর্তন করার সময়, ওরিয়েন্টেশন উপেক্ষা করা হয়।
- ওয়াই-ফাই: MAT mac অ্যাড্রেসের ভিত্তিতে ইউনিকাস্ট প্যাকেট ফিল্টার করার সুবিধা যোগ করা হয়েছে।
- ওয়াই-ফাই: vmnet ব্যবহার করার সময় ক্র্যাশ হওয়ার সমস্যা সমাধান করা হয়েছে।
৩০.৯.৫ (১৫ ডিসেম্বর, ২০২১)
এই আপডেটে নিম্নলিখিত উন্নতি ও সমস্যার সমাধান অন্তর্ভুক্ত রয়েছে:
- ডেস্কটপ বা ট্যাবলেট সাইজের উইন্ডোতে সহজেই ছোট বড় করার সুবিধা যোগ করা হয়েছে।
- মানানসই হোস্ট ডিভাইস থেকে মাল্টি-টাচ ইনপুটের জন্য সহায়তা যোগ করা হয়েছে।
- VirtioWifi: ট্যাপ নেটওয়ার্কের জন্য সহায়তা যোগ করা হয়েছে।
- Wear সিস্টেম ইমেজের জন্য রোটারি ইনপুট চালু করা হয়েছে।
- gRPC অডিও কনফিগারেশন সংক্রান্ত সমস্যার সমাধান করা হয়েছে।
- স্ট্যান্ডার্ড Android সেন্সরকে সাপোর্ট করার জন্য SensorReplay Emulator Playback আপডেট করা হয়েছে।
- USB পাস থ্রু সহ USB ব্যবহার করে এমুলেটরকে পেরিফেরাল ও ডিভাইসের সাথে কানেক্ট করা হয়েছে।
30.4.5 (২৩ ফেব্রুয়ারি, ২০২১)
এই আপডেটে নিম্নলিখিত উন্নতি ও সমস্যার সমাধান অন্তর্ভুক্ত আছে:
- macOS: অডিও ইনপুট বিকৃত হওয়ার সমস্যার সমাধান করা হয়েছে।
- ব্যবহারকারীর স্পেসে virtio-vsock-এর জন্য সহায়তা যোগ করা হয়েছে।
- ভবিষ্যতের সিস্টেম ইমেজ logcat ও কার্নেল মেসেজের জন্য virtio-console ব্যবহার করবে।
- Vulkan রেন্ডারিংয়ের স্পিড বাড়ান।
- টেস্ট করার সময় সমস্যা হলে স্ন্যাপশট ডিবাগিংয়ের জন্য সহায়তা যোগ করা হয়েছে।
- virtio-gpu: লেটেস্ট ব্লব রিসোর্স enum-কে সাপোর্ট করার জন্য আপডেট করা সংজ্ঞা।
- 'asg' ধরনের গ্রাফিক্স ট্রান্সপোর্টের জন্য স্ন্যাপশট সাপোর্ট যোগ করা হয়েছে।
- macOS: macOS SDK 11.1+ ভার্সনের জন্য বিল্ডিং সাপোর্ট যোগ করা হয়েছে।
- নতুন সিস্টেম ইমেজে KVMclock ডিফল্ট হিসেবে চালু করা থাকে।
- Wear এমুলেটরে হার্ট রেট সেন্সরের জন্য সহায়তা যোগ করা হয়েছে।
- libportability Vulkan ব্যাকএন্ড সরানো হয়েছে।
- মডেম সিমুলেটরে আরও ফিচারের জন্য সহায়তা যোগ করা হয়েছে।
৩০.০.২৬ (১৬ আগস্ট, ২০২০)
এই আপডেটে বেশ কিছু নতুন ফিচার, আগে থেকে থাকা ফিচারের উন্নতি এবং সমস্যার সমাধান অন্তর্ভুক্ত আছে।
ভার্চুয়াল হিঞ্জ সেন্সর ও 3D ভিউ সহ ফোল্ডেবল ডিভাইসে কাজ করে
ফোল্ডেবল ডিভাইসের জন্য হিঞ্জ সেন্সর সংক্রান্ত সহায়তা যোগ করা হয়েছে। এর জন্য ভবিষ্যতে Android 11 সিস্টেম ইমেজ ও AVD কনফিগারেশন প্রয়োজন। 3D ফোল্ডেবল ভিউ এবং হিঞ্জ প্যারামিটার এখন আগে থেকে থাকা ফোল্ডেবল প্রিসেটের সাথে ইন্টিগ্রেট করা হয়েছে। নিম্নলিখিত উদাহরণস্বরূপ, 7.3 ফোল্ডেবল AVD-এর
config.iniফাইলের সাথে ব্যবহার করা যেতে পারে:hw.sensor.hinge = yes hw.sensor.hinge.count = 1 hw.sensor.hinge.type = 1 hw.sensor.hinge.ranges = 180-360 hw.sensor.hinge.defaults = 180 hw.sensor.hinge.areas = 54.7-0 hw.sensor.posture_list=4, 3 hw.sensor.hinge_angles_posture_definitions=210-360, 180-210 hw.sensor.hinge.fold_to_displayRegion.0.1_at_posture=4এছাড়াও, ফোল্ড করা যায় এমন ডিভাইসে এখন সাব-টাইপ প্যারামিটার থাকে।
config.iniপ্রপার্টিhw.sensor.hinge.sub_type = hinge/foldএখন উপলভ্য। আরও জানতে Android এমুলেটর ব্যবহার করে Android 11-এর জন্য ডেভেলপ করা ব্লগ পোস্টটি পড়ুন।হিঞ্জ সেন্সর এখন ডিফল্ট হিসেবে চালু করা হয়েছে।
কোনও ফোল্ডেবল ডিভাইস কনফিগার করা থাকলে, এমুলেটর এখন হিঞ্জ অ্যাঙ্গেল সেন্সর আপডেট এবং ভঙ্গি পরিবর্তন গেস্টকে পাঠায়। টুলবারের ভাঁজ করা বা ভাঁজ খোলার বোতাম প্রেস করা হলে, আগে থেকে থাকা ফোল্ডেবল ডিভাইস এখন হিঞ্জ সেন্সর অ্যাঙ্গেল ও পসচার আপডেট করবে।

ARM64 হোস্টের জন্য এমুলেটর
Linux এমুলেটর সোর্স কোড এখন x86_64 থেকে arm64 হোস্টে ক্রস কম্পাইলেশন সমর্থন করে, যা KVM ভার্চুয়ালাইজেশনের সাথে arm64 সিস্টেম ইমেজ চালানোর সুবিধা দেয়। বর্তমানে, শুধুমাত্র
-gpu swiftshader_indirect(Swiftshader arm64 হোস্ট রেন্ডারিং) কাজ করে, তবে হোস্ট GPU libEGL/libGLESv2 লাইব্রেরির একটি মানানসই সেটও ব্যবহার করা যেতে পারে, এর জন্য lib64/gles_swiftshader-কে এগুলি দিয়ে পরিবর্তন করতে হবে এবং তারপরে-gpu swiftshader_indirectদিয়ে আবার চালু করতে হবে। এছাড়াও, স্ন্যাপশট কাজ নাও করতে পারে (কমান্ড লাইনে-no-snapshotযোগ করুন)। নির্দেশাবলী:mkdir emu cd emu repo init -u https://android.googlesource.com/platform/manifest -b emu-master-dev --depth=1 repo sync -qcj 12 cd external/qemu pip install absl-py pip install urlfetch sudo apt-get install crossbuild-essential-arm64 python android/build/python/cmake.py --noqtwebengine --noshowprefixforinfo --target linux_aarch64Apple Silicon-এর জন্য সহায়তা শীঘ্রই উপলভ্য হবে।
virtio-gpu সাপোর্ট
- আসন্ন virtio-gpu হোস্ট কোহেরেন্ট ব্লব রিসোর্সের জন্য হোস্ট সাইডে সহায়তা যোগ করা হয়েছে।
- এমুলেটর রেন্ডারিং কীভাবে কাজ করে তার কারণে, আমরা এখন vcpu থ্রেডে virtio-gpu virtqueue প্রসেস করি (কারণ রেন্ডারিং যেকোনও উপায়ে অন্যান্য থ্রেডে অফলোড করা হয়)। ভবিষ্যতের সিস্টেম ইমেজ এবং এমুলেটর ভার্সনে virtio-gpu রেন্ডারিং চালু করা হবে।
- ভবিষ্যতের সিস্টেম ইমেজে এমুলেটর virtio-gpu ভিত্তিক স্ট্যাকের মাধ্যমে সব গ্রাফিক্স চালাতে পারবে।
অন্যান্য নতুন ফিচার ও উন্নতি
-qemu -usb -device usb-host,vendorid=<usb-vendor-id>,productid=<usb-product-id>ব্যবহার করে Windows-এ এখন USB পাসথ্রু উপলভ্য। (এটিও Linux এবং macOS-এ আগে থেকেই কাজ করা উচিত)- WebRTC লাইব্রেরি M83-এ আপডেট করা হয়েছে।
- এমুলেটর এখন WebRTC-এর মাধ্যমে কন্টেনারে অডিও স্ট্রিমিং সাপোর্ট করে।
- darwinn pipe endpoint সরিয়ে দেওয়া হয়েছে।
- ভিডিওর জন্য CUDA VPx ডিকোড এখন উপলভ্য, যদি CUDA VPx ডিকোড হার্ডওয়্যারে উপলভ্য হয়, এনভায়রনমেন্ট ভেরিয়েবল
ANDROID_EMU_MEDIA_DECODER_CUDA_VPX=1-এর মাধ্যমে। - macOS-এ, SSE 4.1 এবং 4.2 এখন Android গেস্টের মধ্যে থেকে উপলভ্য।
- macOS-এ, INVTSC এখন ডিফল্ট হিসেবে চালু করা হয়েছে। এটি অতিথির থেকে সময় পরিমাপের নির্ভুলতা উন্নত করতে পারে।
- মেট্রিক্সে ব্যবহারকারী কোন এক্সটেন্ডেড কন্ট্রোল প্যানেল বেছে নিয়েছেন তা আমরা এখন ট্র্যাক করি।
- গেস্ট কার্নেল ভার্সন >= ৫.৪ (R সিস্টেম ইমেজ বা তার পরের ভার্সন) হলে, Linux এমুলেটর এখন KVM প্যারাভার্চুয়ালাইজড ক্লক ব্যবহার করে।
- এমুলেটর এখন গেস্ট কার্নেল ডিকম্প্রেস করতে LZ4 ব্যবহার করে, যা এটিকে আধুনিক কার্নেল পাইপলাইনের সাথে সামঞ্জস্যপূর্ণ করে তোলে।
এমুলেটর AVD ডিরেক্টরি, Studio-এম্বেড করা ব্যবহারের ক্ষেত্রে ডিসকভারি ফাইল পাথ এবং স্ন্যাপশটের পাথ পেতে কনসোল কমান্ড যোগ করা হয়েছে:
adb emu avd path # Obtains path to AVD directory adb emu avd discoverypath # Obtains path to discovery file adb emu avd snapshotspath # Obtains path to snapshots folder adb emu avd snapshotpath <snapshotName> # Obtains path to the folder that stores the snapshot for the snapshot with name <snapshotName>
ভার্টিক্যাল স্ক্রিন স্পেস সেভ করার সুবিধা আরও সহজ করতে, আমরা এক্সটেন্ডেড কন্ট্রোল > সেটিংস-এ বর্তমান AVD-এর জন্য ডিভাইস ফ্রেম লুকানোর বিকল্প যোগ করেছি। সব AVD-এর জন্য ডিভাইস ফ্রেম গ্লোবালি লুকাতে, আমরা
NoDeviceFrameফিচার ফ্ল্যাগ উপলভ্য করেছি, যা-feature NoDeviceফ্রেম সহ কমান্ড লাইন থেকে এমুলেটর লঞ্চ করার মাধ্যমে অ্যাক্টিভেট করা যেতে পারে, অথবা এটি লক করতে,NoDeviceFrame = on-কে~/.android/advancedFeatures.ini-এ যোগ করুন (এই ফাইলটি আগে থেকে না থাকলে তৈরি করুন)।মিটারডনেস সাপোর্ট চালু ও বন্ধ করার জন্য সেলুলার পৃষ্ঠায় একটি ড্রপ-ডাউন আইটেম যোগ করা হয়েছে, এটি পুরনো সিস্টেম ইমেজের জন্য কোনও কাজ করে না যা 5G মিটারডনেস টগল সাপোর্ট করে না।
- এছাড়াও, একই উদ্দেশ্যে কনসোল কমান্ড যোগ করা হয়েছে:
gsm meter on|off
- এছাড়াও, একই উদ্দেশ্যে কনসোল কমান্ড যোগ করা হয়েছে:
C++17-এ আপগ্রেড করা টুলচেন / বিল্ড।
সমাধান: এম্বেড করা ইমুলেটর
- ক্লিপবোর্ড এখন কাজ করা উচিত।
- এমুলেটরে বড় হাতের অক্ষর ছোট হাতের অক্ষর হিসেবে ডেলিভার হওয়ার সমস্যার সমাধান করা হয়েছে।
- Windows-এ ইউনিকোড পাথ থেকে কনসোল টোকেন লোড করার সমস্যার সমাধান করা হয়েছে।
- Linux-এ
SO_REUSEPORTসমস্যার মেসেজ ঠিক করা হয়েছে। - gRPC-এর মাধ্যমে স্ন্যাপশট কমান্ড পাঠানোর সময় স্ন্যাপশট করাপ্ট হয়ে যাওয়ার সমস্যার সমাধান করা হয়েছে, পাশাপাশি Android Studio-তে এম্বেড করা এমুলেটরে স্ন্যাপশট সেভ করার বোতাম প্রেস করার সময়ও এই সমস্যার সমাধান করা হয়েছে।
Studio-তে এম্বেড করা Linux এমুলেটর ব্যবহার করার সময় আমরা দেখেছি যে এটি Chrome রিমোট ডেস্কটপের মাধ্যমে করা হলে, একটি সমস্যা দেখা দেয় যেখানে
XDG_RUNTIME_DIRসেট করা হয় না এবং এর ফলে এম্বেড করা এমুলেটর দেখা নাও যেতে পারে, কারণ এমুলেটর ডিসকভারি ফাইলXDG_RUNTIME_DIR-এ থাকে। আপনি Chrome ইস্যু ট্র্যাকারে সংশ্লিষ্ট সমস্যার স্ট্যাটাস চেক করতে পারবেন।বিকল্প হিসেবে, এমুলেটর এখন সম্ভবত-আলাদা ডিরেক্টরিতে ডিসকভারি ফাইল ব্যবহার করার জন্য ফিরে আসে যা ব্যবহারকারীর UID-এর উপর ভিত্তি করে:
/run/user/<uid>।এম্বেড করা এমুলেটর: গোলাকার কোণ/নচ সহ ডিভাইসগুলি এখন কোণ এবং নচের জন্য জায়গা তৈরি করতে তাদের লেআউট সঠিকভাবে পরিবর্তন করে। এর জন্য ওইসব এমুলেটরের কোল্ড বুট প্রয়োজন।
gRPC এন্ডপয়েন্ট এখন ডিভাইসে এসএমএস পাঠানোর সুবিধা দেয়।
সাধারণ সমাধান
- Riot Vanguard অ্যাক্টিভ থাকা অবস্থায় Windows এমুলেটর চালানোর সময় আমরা মানানসই হওয়া সংক্রান্ত সমস্যা লক্ষ্য করেছি। Windows এমুলেটর এখন Vanguard অ্যান্টি-চিট শনাক্ত করে এবং Vanguard শনাক্ত হলে একটি সতর্কতা মেসেজ পপ-আপ করে।
- Windows-এ
FD_SETSIZEসমস্যার সমাধান করা হয়েছে। লুপব্যাক সার্ভারে নন-ব্লকিং কানেকশন স্থাপন করার জন্য আমরা এখনselect()-এর পরিবর্তেWSAEventSelect()ব্যবহার করি। - NDK অনুবাদের মাধ্যমে কিছু ARM64 অ্যাপ্লিকেশন চালানোর সমস্যা সমাধানের সাথে Linux এমুলেটরে F16C CPUID ফিচার সাপোর্ট যোগ করা হয়েছে; macOS/Windows-এ কাজ চলছে।
- টাইমস্ট্যাম্প অনুসরণ করার জন্য gpx/kml রুট প্লেব্যাক ঠিক করা হয়েছে।
- MacOs-এর জন্য লঞ্চ করার সময় বাউন্স করা আইকন ঠিক করা হয়েছে।
config.ini-এhw.audioInput=noএবংhw.audioOutput=noথাকলে, এমুলেটর অডিও এখন সঠিকভাবে বন্ধ করা হয়েছে।- একটি সমস্যার সমাধান করা হয়েছে যেখানে এক্সটেন্ডেড কন্ট্রোল উইন্ডো খোলা থাকলেও অ্যাক্টিভ না থাকার সময় এমুলেটর উইন্ডো মিনিমাইজ করা হলে, এমুলেটর উইন্ডো ছোট বড় করার সময় এক্সটেন্ডেড কন্ট্রোল উইন্ডো দেখানো হতে থাকে। আমরা ভবিষ্যতে কোনও আপডেটে আচরণ (অ্যাক্টিভ এক্সটেন্ডেড কন্ট্রোল উইন্ডো সহ কেস) সম্পূর্ণভাবে সরিয়ে দেব।
- এমুলেটর চালু হওয়ার সময় ওয়াই-ফাই কানেক্ট না হওয়ার সমস্যা সমাধান করা হয়েছে।
- এমুলেটর দীর্ঘ বা অনির্দিষ্ট টাইমআউট সহ শেল কমান্ড ইস্যু করলে, হ্যাং-অন-এক্সিট সংক্রান্ত সমস্যার সমাধান করা হয়েছে।
-initrd-এ পাস করা বড় ছবি আরও ভালোভাবে সাপোর্ট করার জন্য pc-bios আপডেট করা হয়েছে; আগের BIOS-এ খুব অদক্ষ পদ্ধতি ব্যবহার করা হয়েছিল।-wifi-server-portবিকল্প ব্যবহার করার সময় টার্মিনেশন চলাকালীন ক্র্যাশ হওয়ার সমস্যার সমাধান করা হয়েছে।- এমুলেটর এখন একটি সতর্কতা প্রিন্ট করে যদি অসমর্থিত বিকল্পগুলি
-prop-এ পাস করা হয় (শুধুমাত্র qemu.* প্রপস সমর্থিত)। - Windows-এ এমুলেটর তৈরি করার সময়, ফাইলে লেখার ক্ষেত্রে ফ্ল্যাকি ব্যর্থতা দেখার সম্ভাবনা কম হওয়া উচিত। আরও তথ্যের জন্য, Windows বিল্ড নির্দেশাবলী দেখুন।
- ফোল্ডেবল AVD-এর জন্য জুম বোতাম বন্ধ করা হয়েছে, যা সমস্যা সৃষ্টি করছিল।
- ডিভাইস রিবুট করার ফলে বুট টাইম এখন এমুলেটর সঠিকভাবে রিপোর্ট করে।
- Linux: KVM-এর পর্যাপ্ত অনুমতি না থাকলে, এমুলেটর এখন আরও দ্রুত ডিবাগিং সংক্রান্ত নির্দেশাবলী প্রিন্ট করে।
- কোনও অ্যাক্সিলারেশন ছাড়াই এমুলেটর সাম্প্রতিক সিস্টেম ইমেজ বুট করতে না পারার সমস্যা সমাধান করা হয়েছে।
- বুট-কমপ্লিটেড ডিটেক্টর থেকে শুরু করার সময় মেমরি করাপ্ট হওয়া বা ক্র্যাশ করার সমস্যা সমাধান করা হয়েছে।
- দীর্ঘ স্ক্রিন রেকর্ডিং সেশনের সময় মেমরি লিক সংক্রান্ত সমস্যার সমাধান করা হয়েছে।
- Studio 4.1 ব্র্যান্ডিং দেখানোর জন্য এমুলেটর আইকন আপডেট করা হয়েছে।
- Windows-এ রিমোট সেশন শনাক্ত করার জন্য আরও ভালো সহায়তা যোগ করা হয়েছে।
সমাধান: গ্রাফিক্স ও ভিডিও ডিকোড
- Asphalt 9 গেমের লেটেস্ট ভার্সন কালো স্ক্রিনে রেন্ডার হওয়ার সমস্যা সমাধান করা হয়েছে।
NULL-এর সাথে ম্যাপ করা বাফার ফ্লাশ করা সম্পর্কে স্প্যাম সরানো হয়েছে।- অতিথি Vulkan অ্যাপ বন্ধ হয়ে যাওয়ার সময় Vulkan স্টেট টিয়ার ডাউন করার সময় রেস কন্ডিশন সংক্রান্ত সমস্যার সমাধান করা হয়েছে।
- Vulkan ASTC/ETC2 এমুলেশন শেডার এখন libOpenglRender লাইব্রেরিতে বেক করা হয়েছে। ফাইলসিস্টেম থেকে পড়ার তুলনায় এটি আরও বেশি নির্ভরযোগ্য হবে।
- Vulkan-এ একটি সমস্যার সমাধান করা হয়েছে যেখানে Vulkan 1.0 ইনস্ট্যান্সের সাথে হোস্টে রান করলে,
vkGetImageMemoryRequirements2KHRভুলভাবে রিটার্ন করাVkMemoryRequirements2স্ট্রাক্টেরpNextফিল্ড মুছে দেবে। - Vulkan রেন্ডারারে মেমরি লিক সংক্রান্ত সমস্যার সমাধান করা হয়েছে।
- সম্প্রতি হওয়া রিগ্রেশন ঠিক করা হয়েছে যেখানে
isampler2D-এর মতো ভেরিয়েবল নাম সহ GLSL ES 1.00 শেডার কম্পাইল করা যায়নি। - আপডেট করা ANGLE শেডার ট্রান্সলেটরে বিভিন্ন সমস্যার সমাধান করা হয়েছে, যার ফলে Linux-এ শেডার কম্পাইল করার সময় সম্ভাব্য ব্যর্থতার সমাধান করা হয়েছে।
- আমরা এখন এমুলেটর ক্র্যাশ করি যদি বেসিক ফ্রেমবাফার ব্লিট শেডার কম্পাইল করতে ব্যর্থ হয়, যাতে ঘটনাটি ট্র্যাক করা যায়।
- আপস্ট্রিম ANGLE-এর সাথে তাল মিলিয়ে চলতে ANGLE শেডার ট্রান্সলেটর আপডেট করা হয়েছে। এটি
নন-স্কোয়ার ম্যাট্রিক্স ব্যবহার করা OpenGL ES শেডার অনুবাদ ও কনস্ট্যান্ট-ফোল্ডিং করার সময় মেমরি করাপশন সংক্রান্ত
সমস্যার সমাধান করেছে। শেডার ট্রান্সলেটর এখন একটি আলাদা
শেয়ার করা লাইব্রেরি,
libshadertranslator.dll। - কিছু GPU ড্রাইভারের Vulkan ইনিশিয়ালাইজেশনে হওয়া সমস্যার সমাধান করা হয়েছে, যেখানে নির্দিষ্ট কিছু 1.1 ডিভাইস ফাংশন খুঁজে পাওয়া যায়নি।
- Vulkan: আমরা প্রি-বিল্ট লোডার ব্যবহার করার পদ্ধতিতে ফিরে এসেছি কারণ সিস্টেম Vulkan লোডার ব্যবহার করার ফলে কিছু সেট-আপে সমস্যা হচ্ছিল; আমরা আরও ভালো সমাধান খুঁজে বের করব।
- Vulkan এক্সটার্নাল মেমরি ব্যবহার করার সময় হওয়া সমস্যার সমাধান করা হয়েছে, যেখানে এটি হোস্টে বেমানান মেমরি টাইপ ইন্ডিসেস ইমপোর্ট করে থাকতে পারে।
GL_ALIASED_POINT_SIZE_RANGE-এর এমুলেশনে সমস্যা সমাধান করা হয়েছে যেখানে হোস্টে enum কাজ করছিল না।- কিছু হোস্ট GPU-তে Skia শেডার
GL_EXT_shader_framebuffer_fetch-এর সাথে সম্পর্কিত সমস্যার কারণে কম্পাইল করতে না পারার সমস্যা সমাধান করা হয়েছে। - D3D9 ANGLE রেন্ডারারের কপি কয়েকটা ভার্সন আগে সরিয়ে দেওয়া হয়েছে, তাই আমরা এখন সেই রেন্ডারার ব্যবহারকারীদের d3d11 ANGLE-এ অটোমেটিক পাল্টে দিই, যদি সেটি UI-এর পছন্দ অনুযায়ী বেছে নেওয়া হয়ে থাকে।
- ব্যর্থতা ট্র্যাক করার জন্য Windows-এ WGL ইনিশিয়ালাইজেশনে আরও ডিবাগ তথ্য যোগ করা হয়েছে।
hw.gltransport=virtio-gpu-pipeহলে, হোস্ট থেকে গেস্টে ট্রান্সফার করার সময় হোস্টে স্পিন না করে পারফর্ম্যান্স উন্নত করা হয়।- OpenGLES এমুলেশন শুরু করতে না পারলে, আরও ডিবাগ লগিং যোগ করা হয়েছে।
- YouTube ভিডিও ফ্লিকার করা বা স্ন্যাপশট লোড করার সময় না দেখানোর সমস্যার সমাধান করা হয়েছে।
- আপাতত libvpx-এর জন্য সফ্টওয়্যার ডিকোডে ফিরে যাওয়া হয়েছে কারণ আমরা libvpx-এর CUDA হার্ডওয়্যার ডিকোডে সমস্যা দেখেছি। হোস্ট সাইডে আপনার কাছে কাজ করে এমন CUDA হার্ডওয়্যার ডিকোড
ইমপ্লিমেন্টেশন থাকলে, libvpx-এর হার্ডওয়্যার ডিকোড এনভায়রনমেন্ট ভেরিয়েবল
ANDROID_EMU_MEDIA_DECODER_CUDA_VPX=1-এর মাধ্যমে আবার চালু করা যেতে পারে।
30.0.10 (৩০ এপ্রিল, ২০২০)
এই আপডেটে Android Studio-তে সরাসরি এমুলেটর চালানোর জন্য সহায়তা এবং ডিফল্ট হিসেবে ফ্রিফর্ম উইন্ডো মোড চালু থাকা ভার্চুয়াল ডিভাইস অন্তর্ভুক্ত রয়েছে।
Android Studio-তে এমুলেটর রান করা
Android Emulator এখন সরাসরি Android Studio-তে রান করা যাবে। স্ক্রিন রিয়েল এস্টেট সংরক্ষণ করতে, হটকী ব্যবহার করে এমুলেটর ও এডিটর উইন্ডোর মধ্যে দ্রুত নেভিগেট করতে এবং একটি অ্যাপ্লিকেশন উইন্ডোতে আপনার IDE ও এমুলেটর ওয়ার্কফ্লো ম্যানেজ করতে এই ফিচার ব্যবহার করুন।
ফ্রিফর্ম উইন্ডো মোড
Android Studio-তে ভার্চুয়াল ডিভাইস তৈরি করার সময় ১৩.৫” ফ্রিফর্ম ট্যাবলেট হার্ডওয়্যার প্রোফাইল বেছে নিয়ে আপনি এখন এমন একটি AVD তৈরি করতে পারবেন যাতে ফ্রিফর্ম উইন্ডো মোড চালু করা আছে। এই হার্ডওয়্যার প্রোফাইলের জন্য Android 11 Developer Preview 3 বা তার পরবর্তী যেকোনও ভার্সন সহ সিস্টেম ইমেজ প্রয়োজন।
পরিচিত সমস্যা
উইন্ডো ম্যানেজারে ফোকাস ট্রান্সফার করার সময় সমস্যার কারণে ফ্রিফর্ম উইন্ডো ছোট-বড় করার সুবিধা বর্তমানে কাজ করছে না। ভবিষ্যতে Android 11 সিস্টেম ইমেজ রিলিজের সময় এই সমস্যার সমাধান করা হবে।
30.0.0 (১৯ ফেব্রুয়ারি, ২০২০)
এই আপডেটে Android 11 (API লেভেল ৩০) সিস্টেম ইমেজ এবং ARM বাইনারি চালানোর সময় উন্নত পারফর্ম্যান্স অন্তর্ভুক্ত রয়েছে।
Android 11 সিস্টেম ইমেজ
আপনি এখন উপলভ্য API লেভেল ৩০ সিস্টেম ইমেজের যেকোনও একটি বেছে নিয়ে Android 11 রান করে এমন AVD তৈরি করতে পারবেন:
- x86: x86 এবং ARMv7 ABI, দুটিই অন্তর্ভুক্ত।
- x86_64: x86, x86_64, ARMv7 এবং ARM64 ABI অন্তর্ভুক্ত।
Android 9 ও 11 সিস্টেম ইমেজে ARM বাইনারির জন্য সহায়তা
আপনার অ্যাপ ARM বাইনারির উপর নির্ভর করার কারণে আপনি আগে Android Emulator ব্যবহার করতে না পারলে, এখন আপনার অ্যাপ চালানোর জন্য Android 9 x86 সিস্টেম ইমেজ বা যেকোনও Android 11 সিস্টেম ইমেজ ব্যবহার করতে পারবেন – ARM বাইনারি চালানোর জন্য নির্দিষ্ট সিস্টেম ইমেজ ডাউনলোড করার আর প্রয়োজন নেই। এই Android 9 এবং Android 11 সিস্টেম ইমেজ ডিফল্ট হিসেবে ARM সাপোর্ট করে এবং সম্পূর্ণ ARM এমুলেশন সহ ইমেজের তুলনায় নাটকীয়ভাবে উন্নত পারফর্ম্যান্স প্রদান করে।
পরিচিত সমস্যা
- কিছু ARMv7 বাইনারি Android 11 x86 এবং x86_64 সিস্টেম ইমেজে রান করতে পারে না। Android 11 টার্গেট করার সময় ARM64-এর জন্য তৈরি করার কথা বিবেচনা করুন।
২৯.০.১১ (২৯ মে, ২০১৯)
এই আপডেটে নিম্নলিখিত উন্নতি ও সমাধান অন্তর্ভুক্ত আছে:
- Windows: ইমুলেটর এখন
libgccDLL-এর উপর নির্ভর করে যা আমরাlibgcc-এর সাথে স্ট্যাটিক্যালি কম্পাইল করার পরিবর্তে শিপ করি। - Linux: gRPC API-তে logcat সহায়তা যোগ করা হয়েছে। gRPC সম্পর্কে আরও তথ্যের জন্য, gRPC স্ট্রিমিং এমুলেটর (Linux) দেখুন।
- এমুলেটরে এখন ৩২-বিট x৮৬ গেস্টের জন্য হেডলেস বিল্ড অন্তর্ভুক্ত রয়েছে
(
qemu-system-i386)। এই ফিচার ২৬ ও তার নিচের API লেভেলের জন্য x৮৬ ৩২-বিট ছবিকে হেডলেস বিল্ডের সাথে রান করার সুবিধা দেয়। মনে রাখবেন যে API 27 ও তার পরবর্তী ভার্সন সহ ৩২-বিট x86 গেস্টের জন্য, এমুলেটর ৬৪-বিট ইঞ্জিন (qemu-system-x86_64) ব্যবহার করে কারণ এইসব সিস্টেম ইমেজে, ইউজারস্পেস ৩২-বিট হলেও কার্নেল ৬৪-বিট। Android Studio কার্নেল ব্যবহার করে এমুলেশন ইঞ্জিন বেছে নেয়। - আপনি এখন
ANDROID_QT_LIB_PATHএনভায়রনমেন্ট ভেরিয়েবল ব্যবহার করে কাস্টম Qt লাইব্রেরি পাথ নির্দিষ্ট করতে পারবেন। - আপনি এখন আগের বাইনারি সহ এমুলেটর চালাতে পারবেন যা QEMU1 ব্যবহার করে যদি
QEMU1 এক্সিকিউটেবল (
emulator[64]-[x86|arm|etc]) এমুলেটর ডিরেক্টরিতে রাখা হয়। - Windows: এমন একটি সমস্যার সমাধান করা হয়েছে যার কারণে কখনও কখনও এমুলেটর "vCPU শাটডাউন অনুরোধ" মেসেজ সহ চালু হতে পারে না।
- Vulkan-এ এমুলেট করা কম্প্রেসড টেক্সচারে অপ্রয়োজনীয় পাইপলাইন ব্যারিয়ার সংক্রান্ত সমস্যার সমাধান করা হয়েছে।
- চাঙ্কড ট্রান্সফার এনকোডিং ব্যবহার করার সময় http প্রক্সি অনুরোধে হওয়া সমস্যা সমাধান করা হয়েছে। আরও তথ্যের জন্য, কমিট সংক্রান্ত বিবরণ দেখুন।
২৯.০.৯ (৭ মে, ২০১৯)
এই আপডেটে নিম্নলিখিত সমস্যার সমাধান করা হয়েছে:
- Windows: ইমুলেটরে ভার্চুয়াল সিন ক্যামেরা ও ওয়েবক্যাম কাজ না করার সমস্যার সমাধান করা হয়েছে।
২৯.০.৮ (৬ মে, ২০১৯)
এই আপডেটে নিম্নলিখিত উন্নতি ও সমস্যার সমাধান অন্তর্ভুক্ত আছে:
- অতিথি পরিষেবা থাকলে, প্রতিটি ডিসপ্লে গণনা ও সেট করার জন্য একাধিক ভার্চুয়াল হার্ডওয়্যার ডিসপ্লের জন্য সহায়তা যোগ করা হয়েছে। একাধিক ভার্চুয়াল হার্ডওয়্যার ডিসপ্লে ভবিষ্যতে এমুলেটর সিস্টেম ইমেজ আপডেটে অন্তর্ভুক্ত করা হবে।
- নতুন কমান্ড লাইন বিকল্প যোগ করা হয়েছে:
-delay-adb। এই বিকল্পটি গেস্ট বুটিং (কোল্ড বুট থেকে) সম্পূর্ণ না করা পর্যন্ত ADB প্যাকেট প্রসেসিং বন্ধ করে দেয়। এই বিকল্পটি এমন সমস্যাগুলি সমাধান করতে সাহায্য করে যা আপনি যদি CI পরিবেশে এমুলেটর ব্যবহার করেন যা এমুলেটর রিবুট করে এবং একই সময়ে DDMS ব্যবহার করে। - স্ন্যাপশট লোড করার সময় হওয়া সমস্যার সমাধান করা হয়েছে, যেখানে
glIsRenderbufferভুল ভ্যালু দেখাত। - Android গেস্ট রিবুট করার সময় স্টেল স্টেট সংক্রান্ত কিছু সমস্যার সমাধান করা হয়েছে।
- Windows: Windows ইউজারনেমে নন-ASCII অক্ষর বা স্পেস থাকলে এমুলেটর চালু না হওয়ার সমস্যা সমাধান করা হয়েছে।
পরিচিত সমস্যা
- অটোমোটিভ সিস্টেম ইমেজের জন্য স্ন্যাপশট UI বন্ধ করা আছে কারণ এই সিস্টেম ইমেজের জন্য বর্তমানে স্ন্যাপশট কাজ করে না।
২৯.০.৬ (১ মে, ২০১৯)
এই আপডেটে বেশ কিছু নতুন ফিচার, আগে থেকে থাকা ফিচারের উন্নতি এবং সমস্যার সমাধান অন্তর্ভুক্ত আছে।
QEMU1 এবং ৩২-বিট Windows-এর জন্য সহায়তা সরিয়ে দেওয়া
এমুলেটর আরও ভালোভাবে বজায় রাখতে, আমরা আর QEMU1 এবং ৩২-বিট Windows বাইনারি শিপ করি না। আপনি Windows 32-বিট ব্যবহার করলে, ভার্সন 29.0.6-এ আপগ্রেড করতে পারবেন না।
Android Q সিস্টেম ইমেজের জন্য প্রয়োজনীয়তা
আপনি যদি Android Q সিস্টেম ইমেজ ব্যবহার করে এমন একটি AVD চালাতে চান, তাহলে আপনাকে অবশ্যই এখন ভার্সন 29.0.6 (এই রিলিজ ভার্সন) বা তার পরবর্তী ভার্সন ব্যবহার করতে হবে।
Project Marble-এ করা উন্নতি
এই আপডেটটি Project Marble উদ্যোগে আমাদের কাজ চালিয়ে যাচ্ছে যা নভেম্বর ২০১৮-এ Android ডেভেলপার সামিটে ঘোষণা করা হয়েছিল। আগের রিলিজে Project Marble-এর অন্যান্য উন্নতি সম্পর্কে আরও তথ্যের জন্য, Android Emulator: Project Marble-এর উন্নতি দেখুন।
এই আপডেটের জন্য, আমাদের Project Marble-এর বেশিরভাগ প্রচেষ্টা এমুলেটর রিসোর্স ব্যবহার কমানোর জন্য উৎসর্গ করা হয়েছে, যেমন অলস থাকাকালীন এমুলেটরের CPU ব্যবহার কমানো। এছাড়াও, আমরা এমন কিছু পরিবর্তন করেছি যার ফলে আরও বিভিন্ন ধরনের পরিবেশে এমুলেটর ব্যবহার করা সহজ হবে এবং আমরা সাধারণ কোয়ালিটি সংক্রান্ত সমস্যার সমাধান করেছি।
নিম্নলিখিত বিভাগে Project Marble-এর সেইসব উন্নতির ব্যাপারে বর্ণনা করা হয়েছে যেগুলি এই আপডেটে অন্তর্ভুক্ত করা হয়েছে:
হোস্টের অডিও সংক্রান্ত আচরণে উন্নতি
ভার্সন 28.0.3 থেকে শুরু করে, এমুলেটর ডিফল্ট হিসেবে হোস্ট থেকে অডিও ইনপুট ব্লক করে।
আপনি হোস্ট অডিও ডেটা ব্যবহার করতে চাইলে, এক্সটেন্ডেড কন্ট্রোল > মাইক্রোফোন বিকল্পে গিয়ে এবং ভার্চুয়াল মাইক্রোফোন হোস্ট অডিও ইনপুট ব্যবহার করে বিকল্প চালু করে, সেই বিকল্প চালু করতে পারবেন। এমুলেটর রিস্টার্ট করা হলে এই বিকল্প অটোমেটিক বন্ধ হয়ে যায়।
আপনি কমান্ড লাইন ব্যবহার করলে, -allow-host-audio বিকল্প ব্যবহার করে হোস্ট অডিও চালু করতে পারবেন এবং
হোস্ট অডিও ডেটা চালু বা বন্ধ করতে, যথাক্রমে নিম্নলিখিত ADB কমান্ড ব্যবহার করতে পারবেন:
adb emu avd hostmiconadb emu avd hostmicoff
হেডলেস এমুলেটর বিল্ডের ক্ষেত্রে উন্নতি
২৮.০.২৫ ভার্সন থেকে শুরু করে, এমুলেটরে হেডলেস বিল্ড বিকল্প অন্তর্ভুক্ত করা হয়েছে যা UI ছাড়াই রান করতে পারে। আপনি হেডলেস বিল্ড ব্যবহার করে Docker এবং কন্টিনিউয়াস ইন্টিগ্রেশন (CI) ওয়ার্কফ্লোর জন্য এমুলেটর সেট-আপ করতে পারবেন।
এই আপডেটের মাধ্যমে, আমরা এমুলেটরকে আরও উন্নত করেছি যাতে এটি
ন্যূনতম সংখ্যক ডিপেন্ডেন্সির সাথে রান করতে পারে। Linux-এ, হেডলেস বিল্ডে আর
pulseaudio বা libX11 লাইব্রেরি অন্তর্ভুক্ত থাকে না। সিস্টেম-নির্ভর শেয়ার্ড
লাইব্রেরি যা এমুলেটরের সাথে প্যাকেজ করা হয় না তা নিম্নলিখিত তালিকায়
কমানো হয়েছে:
Linux-vdso.so.1Libutil.so.1Libm.so.6Libdl.so.2Librt.so.1Libpthread.so.0Libgcc_s.so.1Libc.so.6ld-linux-x86-64.so.2
Qt UI লাইব্রেরি 5.12 LTS-এ আপগ্রেড করা হয়েছে
এই আপডেটে Qt 5.12 LTS রিলিজ থেকে নিম্নলিখিত উন্নতি অন্তর্ভুক্ত রয়েছে:
- নির্দিষ্ট সিস্টেম ইমেজ শুরু করার সময় Qt-এর
libpngডিকোডিংয়ে ক্র্যাশ এড়াতে, এমুলেটর এখন PNG ইমেজ ডিকোড করতেlibpng-এর নিজস্ব কপি ব্যবহার করে। - কিছু Qt নির্ভর লাইব্রেরির বেমানান ভার্সন সহ কিছু Linux ইনস্টলেশনের সমস্যা সমাধান করতে,
আমরা এখন এমুলেটরের সাথে
libfreetype,libsoftokn,libsqlite3এবংlibxkbcommonপ্যাকেজ করি। - এমুলেটর এখন মনিটরের ডাইমেনশন পেতে প্ল্যাটফর্মের নেটিভ উইন্ডোইং লাইব্রেরি ব্যবহার করে, Qt লাইব্রেরি ব্যবহার করার পরিবর্তে যা অবিশ্বস্ত ফলাফল প্রদান করে।
কোল্ড বুটের পরে অটোমেটিক CPU অপ্টিমাইজেশন
CPU ব্যবহার সংক্রান্ত সমস্যা সমাধান করতে, এমুলেটর এখন boot complete সিগন্যাল পাওয়ার পরে কোল্ড বুটে নিম্নলিখিত ADB কমান্ড রান করে:
adb shell settings put screen_off_timeout 214783647- এই কমান্ড স্ক্রিন অফ টাইমআউট বাড়ায় যাতে এমুলেটর চার্জ না করেই ব্যাটারি মোডে ব্যবহার করা যায়। ব্যাটারি মোডে, ব্যাকগ্রাউন্ডে সিপিইউ-এর ব্যবহার অনেক কমে যায়।
- এসি চার্জিং মোডে, অ্যাপ আপডেটের মতো GMSCore ব্যাকগ্রাউন্ড অপারেশন, কোনও সতর্কতা ছাড়াই ডিভাইসের সব সিপিইউ কোর—এবং এক্সটেনশন হিসেবে ব্যবহারকারীর মেশিন—দখল করে নিতে পারে।
adb shell pm revoke com.google.android.googlequicksearchbox android.permission.RECORD_AUDIO- এই কমান্ড Google Search অ্যাপের জন্য মাইক্রোফোন ব্যবহারের অনুমতি তুলে নেয়, যার ফলে Google Search অ্যাপ অ্যাক্টিভ থাকাকালীন হোম স্ক্রিন ও লঞ্চারে ব্যাকগ্রাউন্ড CPU ব্যবহার অনেক কমে যায়।
- হোস্টের জন্য হোস্ট অডিও বন্ধ করার এমুলেটরের ডিফল্ট অ্যাকশন ছাড়াও এই কমান্ড রান করা হয়। এছাড়াও, এটি ২৮.০.২৩ রিলিজ থেকে হটওয়ার্ড শনাক্তকরণ-এর জন্য বর্ণিত সিপিইউ ব্যবহার কমানোর সুবিধা অটোমেটিক প্রদান করে।
পারফর্ম্যান্স মনিটর করার জন্য নতুন এনভায়রনমেন্ট ভেরিয়েবল
এমুলেটরের পারফর্ম্যান্স ও রিসোর্স ব্যবহারের বিস্তারিত মনিটরিং চালু করতে, আপনি এখন দুটি নতুন এনভায়রনমেন্ট ভেরিয়েবল ব্যবহার করতে পারবেন।
SHOW_PERF_STATS=1- এই এনভায়রনমেন্ট ভেরিয়েবল সিপিইউ ও RAM ব্যবহার ট্র্যাক করার সুবিধা চালু করে। RAM ব্যবহারের জন্য ট্র্যাকিং গ্রাফিক্স ব্যবহার এবং মোট রেসিডেন্ট মেমরির মধ্যে পার্থক্য করে।
ANDROID_EMU_TRACING=1- এই এনভায়রনমেন্ট ভেরিয়েবল, ইনপুট বা গ্রাফিক্স অপারেশন অনেক সময় (১ মিলি সেকেন্ডের বেশি) নিলে প্রতিবার প্রিন্ট করার সুবিধা দেয়।
- এছাড়াও, আমরা এই এনভায়রনমেন্ট ভেরিয়েবল ব্যবহার করে সেইসব সমস্যা ডায়াগনসিস করতে সাহায্য করি যেগুলি Windows ব্যবহারকারীরা macOS বা Linux ব্যবহারকারীদের তুলনায় আরও বেশি জ্যাঙ্ক (ড্রপ করা ফ্রেম) সহ অভিজ্ঞতা অর্জন করেছেন।
Project Marble-এ সাধারণ উন্নতি
এছাড়াও, এই আপডেটে নিম্নলিখিত সাধারণ উন্নতি অন্তর্ভুক্ত আছে যা Project Marble উদ্যোগের অংশ:
- আপনি এখন নিম্নলিখিত কনসোল কমান্ডের মাধ্যমে এমুলেটরে সব vCPU অবিলম্বে পজ করতে পারবেন:
adb emu avd pauseadb emu avd resume
- OpenGL ড্রয়িংয়ের ওভারহেড অনেক কমে গেছে। এই উন্নতির ফলে এমুলেটর অ্যানিমেশন চালানোর সময় CPU-এর ব্যবহার কমে যায়।
- মেইনলাইন QEMU-এর e1000 ভার্চুয়াল নেটওয়ার্ক ডিভাইসের জন্য সাপোর্ট ফিরিয়ে আনা হয়েছে। আপনি এই ডিভাইস ব্যবহার করে ব্রিজড নেটওয়ার্ক এনভায়রনমেন্টে এমুলেটর সেট-আপ করতে পারবেন। ব্রিজড নেটওয়ার্ক এনভায়রনমেন্টে, এমুলেটর হোস্ট নেটওয়ার্কে দেখানো হয় এবং হোস্ট নেটওয়ার্ক এমুলেটরে দেখানো হয়।
- এমুলেটর চালু করার জন্য এখন QEMU 2.12-উপযুক্ত BIOS বাইনারি ব্যবহার করা হয়।
- ভিডিও এনকোডিং ও ডিকোডিংয়ের জন্য
ffmpegভার্সন 3.4.5-এ আপগ্রেড করা হয়েছে। - macOS-এ QEMU মেন লুপ I/O-এর ওভারহেড অনেক কম করা হয়েছে।
select()-এর উপর ভিত্তি করে তৈরি মেন লুপের পরিবর্তেkqueue-এর উপর ভিত্তি করে তৈরি মেন লুপ ব্যবহার করে এটি করা হয়েছে। - এমুলেটরের সাথে logcat চালানোর সময় অপ্রত্যাশিত EOF-এর সমস্যা সমাধান করতে Logcat বাফারের সাইজ বাড়িয়ে ২ এমবি করা হয়েছে।
- এমুলেটর এখন ডিফল্ট হিসেবে
LC_ALL=Cএনভায়রনমেন্ট ভেরিয়েবল এক্সপোর্ট করে। এই পরিবর্তনটি বিভিন্ন লোকেলে এমুলেটর চালানোর সাথে সম্পর্কিত ক্র্যাশ এবং অসঙ্গতি সংক্রান্ত সমস্যার সমাধান করে। - আপনি এখন পারফর্ম্যান্স স্ট্যাটাস ব্যবহার করে এমুলেটরের CPU এবং RAM ব্যবহার ট্র্যাক করতে পারবেন যা আপনি এক্সটেন্ডেড কন্ট্রোল > সেটিংস > উন্নত > পারফর্ম্যান্স স্ট্যাটাস থেকে অ্যাক্সেস করতে পারবেন। এমুলেটর খুব বেশি সিপিইউ বা র্যাম ব্যবহার করছে বলে মনে হলে, সমস্যা দ্রুত ডায়াগনসিস করতে এইসব পরিসংখ্যান ব্যবহার করুন।
glReadPixels GL_IMPLEMENTATION_COLOR_READ_TYPEএখন এমুলেট করা GPU-এর পরিবর্তে হোস্ট GPU-এর ফলাফল ব্যবহার করে। এই পরিবর্তনটি সেইসব সমস্যা সমাধান করতে সাহায্য করে যেখানে রিডব্যাকের জন্য অনুপযুক্ত ফর্ম্যাটের কারণে ছবি এবং অ্যাসেট দেখা যায় না।- হোস্টের মাধ্যমে OpenGL ES এক্সটেনশন
GL_EXT_texture_format_BGRA8888এবংGL_APPLE_texture_format_BGRA8888কাজ করলে, সেগুলির জন্য সহায়তা যোগ করা হয়েছে। - Bugreport UI-তে আরও ডায়াগনস্টিক তথ্য যোগ করা হয়েছে। এছাড়াও, আপনি নিম্নলিখিত কমান্ড ব্যবহার করে
কনসোল থেকে ত্রুটির প্রতিবেদন অ্যাক্সেস করতে পারবেন:
telnet localhost 5554avd bugreport
- Android Q সিস্টেম ইমেজে, এমুলেটর তার ন্যূনতম RAM সাইজ বাড়িয়ে ২ জিবি করে।
- OpenGL বা হাইপারভাইজার শুরু করতে ব্যর্থ হলে আরও লগিং এবং প্রিন্টিং যোগ করা হয়েছে।
- এমুলেটর যদি কোনও AVD-এর কনকারেন্ট
-read-onlyইনস্ট্যান্স চালু করতে না পারে, তাহলে এমুলেটর এখন ৩ সেকেন্ডে আরও ৩ বার-read-onlyAVD আবার চালু করার চেষ্টা করে। এই পরিবর্তনটি এমুলেটরকে একটি AVD-এর সমবর্তী-read-onlyইনস্ট্যান্স চালু করতে সক্ষম হওয়ার সম্ভাবনা বাড়িয়ে দেয় যদি সেই AVD-এর অন্যান্য লেখার যোগ্য ইনস্ট্যান্সগুলি বাসি ফাইলগুলি পরিষ্কার করা না হয়। - আসন্ন সিস্টেম ইমেজের জন্য, এমুলেটর এখন হার্ডওয়্যার কম্পোজার ২.০-কে সাপোর্ট করে। এই পরিবর্তনের ফলে বেশিরভাগ অ্যানিমেশন চালানোর সময় ড্রাইভার ওভারহেড কম হওয়া উচিত।
- এমুলেটর বিল্ড এখন CMake/Ninja-এর উপর ভিত্তি করে তৈরি।
- এমুলেটর এক্সটেন্ডেড কন্ট্রোল UI-তে, কীবোর্ড শর্টকাট টেবিলের ডিভাইডার লাইন রিস্টোর করা হয়েছে।
- ব্যবহারকারীরা এখন আমাদের টিমকে ১০ সেকেন্ডের ব্যবধানে CPU এবং RAM ব্যবহারের মেট্রিক্স প্রদান করার জন্য অপ্ট-ইন করতে পারেন। আমরা এই মেট্রিকগুলি ব্যবহার করি এমুলেটর রিসোর্স ব্যবহারের ডেটা সমৃদ্ধ করতে, যা আমাদের ব্যবহারকারীদের বিভিন্ন ব্যবহারের ক্ষেত্রে থেকে পাওয়া যায়। এটি আমাদের এমুলেটরকে আরও দক্ষ এবং প্রতিক্রিয়াশীল করতে সাহায্য করে।
Project Marble-এর সাধারণ সমস্যার সমাধান
এছাড়াও, এই আপডেটে নিম্নলিখিত সাধারণ সমস্যার সমাধান অন্তর্ভুক্ত আছে যা Project Marble উদ্যোগের অংশ:
- Android Q সিস্টেম ইমেজ ব্যবহার করার সময় Intel GPU সহ সিস্টেমে টুইচিং ও ভুল ফ্রেম দেখানো সংক্রান্ত সমস্যার সমাধান করা হয়েছে।
- Android Q সিস্টেম ইমেজ Pixel 2 XL স্কিনের (বা নচ বা গোলাকার কোণ আছে এমন যেকোনও স্কিন) সাথে ব্যবহার করার সময় কালো স্ক্রিন দেখানোর সমস্যা সমাধান করা হয়েছে।
-partition-sizeকমান্ড লাইন বিকল্প ডেটা পার্টিশন সাইজ সেট করতে না পারার সমস্যা সমাধান করা হয়েছে।- Linx এমুলেটরে pulseaudio স্পিন করে এবং কিছু পরিস্থিতিতে সম্পূর্ণ CPU কোর ব্যবহার করে, এই সমস্যার সমাধান করা হয়েছে।
- কমপ্রেস করা টেক্সচার প্রসেস করার সময় বাউন্ডস মেমরি অ্যাক্সেসের বাইরে থাকা সংক্রান্ত সমস্যার সমাধান করা হয়েছে।
- নির্দিষ্ট কিছু গ্র্যালক বাফার (RGB 565, RGB10A2, RGB(A)16F ফর্ম্যাট সহ) আপডেট করার সময়
glTexSubImage2D-এ হোস্টে হওয়া GL সংক্রান্ত সমস্যার সমাধান করা হয়েছে। - Android Q সিস্টেম ইমেজে স্ন্যাপশট সহ ডিসপ্লে সংক্রান্ত সমস্যার সমাধান করা হয়েছে যেখানে অনুপযুক্ত ইনস্ট্যান্স ডিভাইজর সেটিংয়ের মাধ্যমে বিজ্ঞপ্তি শেডের জিওমেট্রি রেন্ডার করা হয়েছিল।
- Qt সিগন্যাল হারিয়ে ফেলার কারণে বা স্টার্টআপে ফ্লেকি, অসামঞ্জস্যপূর্ণ অবস্থার কারণে লঞ্চের সময় ক্র্যাশ এবং ফ্রিজ হওয়ার মতো কিছু সমস্যা সমাধান করা হয়েছে যা সহজে সমাধান করা যায় না।
- কনকারেন্সি সংক্রান্ত একাধিক সমস্যার সমাধান করা হয়েছে। আমরা এখন ThreadSanitizer (TSAN) সহ Linux এমুলেটর তৈরি করতে পারি, যা সহজেই এমন বাগ খুঁজে বের করতে পারে যা অন্যথায় পুনরুৎপাদন করা কঠিন।
- Linux ব্যবহারকারীদের জন্য: আমরা দেখেছি যে নির্দিষ্ট কিছু হোস্ট কার্নেলে, গেস্ট Android
কার্নেল KVM-এ সাধারণ হার্ডওয়্যার সমস্যার কারণে বন্ধ হয়ে যেতে পারে। ডিবাগ করার ক্ষমতা বাড়াতে,
এটি ঘটলে এমুলেটর এখন
abort()করবে (আগে, এমুলেটর শুধু হ্যাং হয়ে যেত)। - Linux ব্যবহারকারীদের জন্য: CI সেট-আপের ক্ষেত্রে সুবিধার জন্য, আপনি নতুন
-stdouterr-file <file-name>কমান্ড লাইন বিকল্প ব্যবহার করেstdoutএবংstderrদুটিকেই একটি ফাইলে রিডাইরেক্ট করতে পারবেন। SO_REUSEADDRভুলভাবে ব্যবহার করা সংক্রান্ত সমস্যার সমাধান করা হয়েছে। আরও তথ্যের জন্য, কমিট সংক্রান্ত বিবরণ দেখুন।- Windows এমুলেটরের সাথে অনেকদিন ধরে চলা একটি সমস্যার সমাধান করা হয়েছে যেখানে ADB কমান্ডের মতো সাব-প্রসেস, ইউজারনেমে স্পেস থাকলে শুরু হতে পারেনি।
- HAXM vCPU থ্রেডে RCU-এর মিসিং ইনিশিয়ালাইজেশন সংক্রান্ত সমস্যার সমাধান করা হয়েছে। এই সমাধানের মাধ্যমে কিছু ক্র্যাশ ও রেস কন্ডিশন সংক্রান্ত সমস্যার সমাধান করা যেতে পারে।
- সাম্প্রতিক Android Q সিস্টেম ইমেজ ব্যবহার করে স্ন্যাপশট UI থেকে স্ন্যাপশট সেভ ও লোড করার নির্দিষ্ট প্যাটার্নের সাথে হওয়া ক্র্যাশ ঠিক করা হয়েছে।
- স্ন্যাপশট সেভ করার সময় AR ম্যাক্রো চলতে থাকলে, স্ন্যাপশট থেকে এমুলেটর শুরু করার সময় ভার্চুয়াল সিন ক্যামেরা ফাঁকা দেখানোর সমস্যা সমাধান করা হয়েছে।
- রিমোট ডেস্কটপ সেট-আপ ব্যবহার করেন এমন কিছু ব্যবহারকারী Linux-এ এমুলেটর লঞ্চ করার সময়
কালো স্ক্রিন দেখতে পাচ্ছিলেন, এই সমস্যার সমাধান করা হয়েছে। এটি এড়াতে, এমুলেটর এখন স্পষ্টভাবে
MESA_RGB_VISUALকনফিগার করে। আরও তথ্যের জন্য, কমিট সংক্রান্ত বিবরণ দেখুন। - একটি সমস্যার সমাধান করা হয়েছে যেখানে টিভি AVD-তে রোটেট বোতাম দেখা যেত।
- একটি সমস্যার সমাধান করা হয়েছে, যেখানে এমুলেটর সবসময় উপরে সেট করা থাকলে, এমুলেটর ঘোরানোর সময় প্রতিবার এক্সটেন্ডেড কন্ট্রোল উইন্ডো দেখা যেত।
ফোল্ড করা যায় এমন ডিভাইসের জন্য হার্ডওয়্যার প্রোফাইল
এমুলেটরে এখন ফোল্ডেবল ডিভাইসের জন্য হার্ডওয়্যার প্রোফাইল অন্তর্ভুক্ত করা হয়েছে। এইসব নতুন হার্ডওয়্যার প্রোফাইল ব্যবহার করতে, আপনাকে Android Studio 3.5 Canary 10 বা তার পরবর্তী যেকোনও ভার্সন ব্যবহার করতে হবে।
দুটি ফোল্ডেবল হার্ডওয়্যার প্রোফাইল আছে যা আপনি AVD তৈরি করতে ব্যবহার করতে পারেন:
- ৭.৩" ফোল্ডেবল: ১৫৩৬x২১৫২ আনফোল্ডেড, ৪.৬" ৮৪০x১৯৬০ ফোল্ডেড
- ৮" ফোল্ডেবল: ২২০০x২৪৮০ আনফোল্ডেড, ৬.৬" ১৪৮০x২৪৮০ ফোল্ডেড
এইসব হার্ডওয়্যার প্রোফাইলের মধ্যে কোনও একটি ব্যবহার করে এমুলেটর রান করার সময়, আপনি এমুলেটর টুলবারে ভাঁজ করা ও খোলা অ্যাকশন, কনসোল কমান্ড অথবা নিম্নলিখিত কীবোর্ড শর্টকাট ব্যবহার করে ডিভাইস ভাঁজ করতে ও খুলতে পারবেন:
- ভাঁজ করুন:
Ctrl + F(macOS-এCommand + F) - আনফোল্ড:
Ctrl + U(macOS-এCommand + U)
AR ম্যাক্রো
এমুলেটরে এখন AR ম্যাক্রো অন্তর্ভুক্ত করা হয়েছে যা আপনাকে সাধারণ AR অ্যাকশন পরীক্ষা করতে সাহায্য করতে পারে। যেমন, ডিভাইসের সব সেন্সরকে ডিফল্ট অবস্থায় রিসেট করতে আপনি ম্যাক্রো ব্যবহার করতে পারেন।
আরও তথ্যের জন্য, ম্যাক্রোর মাধ্যমে সাধারণ AR অ্যাকশন টেস্ট করা দেখুন।
Vulkan সাপোর্ট (Windows, Linux)
Windows এবং Linux ব্যবহারকারীরা এখন Android এমুলেটর সহ Vulkan অ্যাপগুলি পরীক্ষা করতে পারবেন Vulkan 1.1 যখন একটি সামঞ্জস্যপূর্ণ সিস্টেম ইমেজ ব্যবহার করে (Android Q Beta 3 বা তার বেশি Vulkan 1.1, Vulkan 1.0-এর জন্য Android Q Beta 2) এবং একটি সামঞ্জস্যপূর্ণ হোস্ট GPU (এটি 2014 এবং তার পরে থেকে বেশিরভাগ Intel, NVIDIA এবং AMD GPU অন্তর্ভুক্ত)।
Vulkan সাপোর্ট চালু করতে, আপনাকে অবশ্যই নিম্নলিখিত ফিচার ফ্ল্যাগগুলি আপনার
~/.android/advancedFeatures.ini ফাইলে যোগ করতে হবে (ফাইলটি না থাকলে তৈরি করুন):
Vulkan = onGLDirectMem = on
ROM ডেভেলপারদের জন্য প্রাথমিক সহায়তা
ROM ডেভেলপার যারা AOSP master ব্রাঞ্চে sdk_phone_x86 বা sdk_phone_x86_64
(userdebug, eng ভেরিয়েন্ট) টার্গেট তৈরি করছেন, তারা এখন Vulkan-চালিত এমুলেটর
রান করতে পারবেন।
এই সহায়তা এখনও পরীক্ষামূলক এবং মূলত ডেভেলপারদের জন্য যারা
সিস্টেম ইমেজ, ড্রাইভার এবং গেম ইঞ্জিনে কাজ করেন। অনেক এক্সটেনশন এখনও খুঁজে পাওয়া যায়নি।
তবে, HOST_COHERENT মেমরি কাজ করে এবং আপনি এখন
Vulkan API টিউটোরিয়াল স্যাম্পেল চালাতে পারবেন।
আপনি Linux ব্যবহার করলে, নিম্নলিখিত কমান্ড ব্যবহার করে এটি করে দেখতে পারেন:
mkdir aosp-mastercd aosp-masterrepo init -u https://android.googlesource.com/platform/manifest -b master --depth=1repo sync -c -j12. build/envsetup.shlunch sdk_phone_x86_64-userdebugmake -j12emulator -no-snapshot -feature Vulkan,GLDirectMem
Vulkan-এর সাথে Skia রেন্ডারিং
Vulkan-এ কাজ করে এমন NVIDIA এবং AMD GPU, GL_EXT_memory_objects এক্সটেনশনের মাধ্যমে OpenGL-এর সাথে জিরো-কপি ইন্টারঅপারেবিলিটিতেও কাজ করে। এমুলেটর এই ক্ষমতার সুবিধা নিয়ে Skia Vulkan API ব্যবহার করে Android UI রেন্ডার করার সম্পূর্ণ উপায় প্রদান করে।
আপনার কাছে Vulkan-এর সাথে কাজ করে এমন NVIDIA বা AMD GPU থাকলে, মানানসই সিস্টেম ইমেজের (Android Q Beta 3 এবং তার পরবর্তী ভার্সন) সাথে Skia রেন্ডারিং পরীক্ষা করতে নিম্নলিখিত কমান্ড ব্যবহার করুন:
adb shellsusetprop debug.hwui.renderer skiavkstopstart
Vulkan-এর জন্য macOS সাপোর্ট
macOS-এ এখনও পরীক্ষামূলকভাবে কাজ চলছে, তবে এমুলেটরে আগে থেকেই Swiftshader, MoltenVK এবং libportability (gfx-rs) API অন্তর্ভুক্ত আছে। আপনি নিম্নলিখিত এনভায়রনমেন্ট ভেরিয়েবল সেট করে এইসব API নিয়ে পরীক্ষা করতে পারবেন:
- Swiftshader:
ANDROID_EMU_VK_ICD=swiftshader - MoltenVK:
ANDROID_EMU_VK_ICD=moltenvk - libportability:
ANDROID_EMU_VK_ICD=portability
পরিচিত সমস্যা
HAXM কখনও কখনও গেস্টের সাথে Vulkan কোহেরেন্ট মেমরি ম্যাপ করতে ব্যর্থ হতে পারে এবং এমুলেটর বন্ধ করে দেয়। আসন্ন HAXM আপডেটে এই সমস্যার সমাধান করা হয়েছে।
gRPC স্ট্রিমিং ইমুলেটর (Linux)
আমরা সবসময় এমুলেটরকে যতটা সম্ভব বহুমুখী করার চেষ্টা করছি, যাতে হোস্ট GPU রেন্ডারিং এবং বিভিন্ন ধরনের রানিং কন্টেক্সটে ইন্টার্যাক্টিভিটির সুবিধা পাওয়া যায়। আমাদের CI এবং রিমোট ডেস্কটপ ব্যবহারকারীদের নিম্নলিখিত দীর্ঘস্থায়ী সমস্যা রয়েছে:
- এমুলেটরে প্রোগ্রাম্যাটিক্যালি ইনপুট কমান্ড পাঠানোর জন্য হয় adb শেল কমান্ড চালাতে হয়, যা অনেক বেশি ওভারহেড তৈরি করতে পারে, অথবা টেলনেট কনসোল ব্যবহার করতে হয়, যা দ্রুত কাজ করে, কিন্তু কিছু নেটওয়ার্ক কনফিগারেশনের সাথে কাজ নাও করতে পারে।
- CI ব্যবহারকারীরা প্রায়ই হেডলেস এমুলেটর রান করেন, যার ফলে স্ক্রিন দেখা বা ইন্টার্যাক্টিভ হওয়ার প্রয়োজন আছে এমন সমস্যা লক্ষ্য করা কঠিন হতে পারে।
- হোস্ট GPU রেন্ডারিং ব্যবহার করার সময় রিমোট ডেস্কটপ ব্যবহারকারীরা প্রায়ই এমুলেটরের সাথে ইন্টার্যাক্ট করতে পারেন না, কারণ GPU রেন্ডারিং প্রায়ই হোস্টের নন-ভার্চুয়াল ডিসপ্লের সাথে যুক্ত থাকে।
এই সমস্যার সমাধান করতে, Linux মেশিনে চালানোর সময়, এমুলেটর এখন gRPC পরিষেবা প্রদান করে। gRPC হল RPC-এর জন্য একটি সাধারণ ফ্রেমওয়ার্ক যা HTTP-তে কাজ করে।
ডিফল্ট হিসেবে, এমুলেটর gRPC পরিষেবা বন্ধ করা থাকে, তবে আপনি নিম্নলিখিত কমান্ড লাইন বিকল্প ব্যবহার করে
পরিষেবাটি চালু করতে পারেন, যেখানে <port>
হল সেই পোর্ট যা এমুলেটর gRPC অনুরোধ (সাধারণত 5556) পরিবেশন করবে:
-grpc <port>
পরিষেবা চালু হয়ে গেলে, ক্লায়েন্টরা gRPC কমান্ড ইস্যু করতে পারবেন। বর্তমান কমান্ডের সেট ইনপুট ইভেন্ট পাঠানো এবং স্ক্রিনশট পাওয়া, দুটিই করতে দেয়। এইসব কমান্ড নিম্নলিখিত সমস্যাগুলি সমাধান করতে সাহায্য করে:
- HTTP-তে কম ওভারহেড সহ এমুলেটরে ইনপুট কমান্ড পাঠানো যেতে পারে। HTTP এছাড়াও অতিরিক্ত নেটওয়ার্ক কনফিগারেশনে কমান্ড পাঠানোর সুবিধা চালু করে।
- এমুলেটর হেডলেস অবস্থায় চললেও, বর্তমান স্ক্রিন সম্পর্কে কোয়েরি করার জন্য স্ক্রিনশট কমান্ড পাঠানো যেতে পারে। ইন্টার্যাক্টিভিটির জন্য, ইনপুট ইভেন্টও এমুলেটরে ফেরত পাঠানো যেতে পারে।
- রিমোট ডেস্কটপ ব্যবহারকারীরা মূল ডিসপ্লেতে হেডলেস এমুলেটর চালাতে পারেন। এমুলেটরের সাথে ইন্টার্যাক্ট করার জন্য স্ক্রিনশট পেতে এবং ইনপুট ইভেন্ট পাঠাতে gRPC ব্যবহার করার সময় GPU অ্যাক্সিলারেটেড রেন্ডারিংয়ের মাধ্যমে এটি করা যায়।
উপলভ্য কমান্ডের সম্পূর্ণ তালিকা দেখতে, এই protobuf দেখুন।
gRPC ব্যবহার শুরু করার ব্যাপারে আপনাকে সাহায্য করতে, আমরা কিছু স্যাম্পেল ক্লায়েন্ট প্রদান করেছি যা আপনি রেফারেন্স হিসেবে ব্যবহার করতে পারবেন।
বর্তমানে, এর মধ্যে নিম্নলিখিত স্যাম্পেল অন্তর্ভুক্ত:
- Go-ভিত্তিক পরিষেবা যা এমুলেটর স্ট্যাটাস কোয়েরি করতে ব্যবহার করা যেতে পারে।
- একটি React অ্যাপ যা স্ক্রিনশট এবং ইনপুট RPC-এর মাধ্যমে রিমোট ইন্টারঅ্যাক্টিভিটি প্রদর্শন করে। এই স্যাম্পেলের জন্য protobuf ভার্সন 3.7.0 বা তার পরের যেকোনও ভার্সন প্রয়োজন।
- একটি Python স্যাম্পেল যা এমুলেটরের VM কনফিগারেশন কোয়েরি করে এবং তারপর কমান্ডের একটি সিরিজ পাঠায়।
২৮.০.২৫ (২৯ মার্চ, ২০১৯)
এই আপডেটে নিম্নলিখিত উন্নতি ও সমস্যার সমাধান অন্তর্ভুক্ত আছে:
হেডলেস এমুলেটর বিল্ড
সিস্টেমের অন্তর্নিহিত প্রত্যাশার কারণে ডকার এবং অন্যান্য কন্টিনিউয়াস ইন্টিগ্রেশন (CI) ওয়ার্কফ্লোর সাথে এমুলেটর সেট-আপ করা কঠিন হয়ে পড়েছে। সিস্টেমটি তার শেয়ার করা লাইব্রেরি ডিপেন্ডেন্সির সাথে Qt-কে সাপোর্ট করতে সক্ষম (অন্যান্য সমস্যার মধ্যে)।
এই সমস্যার সমাধান করার প্রথম ধাপ হিসেবে, আমরা এমুলেটর লঞ্চারের একটি ভেরিয়েন্ট নিয়ে এসেছি
যেটি QEMU এক্সিকিউটেবল সহ কাজ করে এবং Qt-এর উপর নির্ভর করে না। Linux-এ এখনও
libX11-এর লিঙ্ক আছে, তবে আমরা আশা করি যে শীঘ্রই সেটিও সরিয়ে দিতে পারব।
হেডলেস এমুলেটর ব্যবহার করতে, স্বাভাবিকের মতো কমান্ড লাইন থেকে এমুলেটর চালান,
তবে এমুলেটর বাইনারি ইনভোকেশন emulator-headless দিয়ে পরিবর্তন করুন। আরও তথ্যের জন্য, 28.1.8 Canary
রিলিজ আপডেট দেখুন।
- Android Q সিস্টেম ইমেজ চালানোর সময় Intel GPU-তে টুইচিং ও ভুল ফ্রেম ডিসপ্লে সংক্রান্ত সমস্যার সমাধান করা হয়েছে।
- Pixel 2 XL স্কিন সহ Android Q সিস্টেম ইমেজ ব্যবহার করার সময় কালো স্ক্রিন দেখানোর সমস্যা সমাধান করা হয়েছে।
- এমুলেটর চালু করার জন্য এখন লেটেস্ট BIOS বাইনারি ব্যবহার করা হয়। এই পরিবর্তন "vCPU শাটডাউন অনুরোধ" সংক্রান্ত সমস্যা কমাতে সাহায্য করতে পারে যা কখনও কখনও Windows-এ এমুলেটর লঞ্চ করার সময় ঘটে।
- "স্ন্যাপশট থেকে Android Q সিস্টেম ইমেজ আবার চালু করার সময় ভুল ডিসপ্লে" সংক্রান্ত সমস্যার জন্য ব্যাকপোর্ট করা সমাধান।
- ব্যবহারকারীরা "অননুমোদিত" এমুলেটর সংক্রান্ত সমস্যার সম্মুখীন হচ্ছিলেন
কারণ প্ল্যাটফর্ম-টুল 28.0.2-এ ADB-তে একটি বেমানান পরিবর্তন করা হয়েছিল। আপনি এখন
ইমুলেটরের সাথে প্ল্যাটফর্ম-টুল 28.0.2 থেকে নিরাপদে ADB ব্যবহার করতে পারবেন। "অননুমোদিত" এমুলেটর নিয়ে
সমস্যা হলে, নিম্নলিখিত সমস্যার সমাধানকরণ
ধাপগুলি অনুসরণ করুন:
- সব এমুলেটর থেকে বেরিয়ে আসুন।
~/.android/adbkeyএবং~/.android/adbkey.pubদুটি ফাইলই মুছে দিন।- এই কমান্ড রান করুন:
adb kill-server - এই কমান্ড রান করুন:
adb devices - AVD ডেটা মুছুন।
- এমুলেটর আবার চালু করুন।
২৮.০.২৩ (২৯ জানুয়ারি, ২০১৯)
এই আপডেটে নিম্নলিখিত উন্নতি ও সমস্যার সমাধান অন্তর্ভুক্ত রয়েছে:
ডিফল্ট হিসেবে হোস্টের অডিও ইনপুট বন্ধ করা আছে
Reddit-এ সাম্প্রতিক একটি পোস্টে বিস্তারিতভাবে জানানো হয়েছে যে কীভাবে গেস্ট Android OS সবসময় হোস্ট মাইক্রোফোনের অডিও ব্যবহার করবে এবং এর ফলে "Ok Google" অপ্রত্যাশিতভাবে কাজ করবে। আমরা এর জন্য দুঃখিত এবং Android টিমের সাথে কাজ করব যাতে সিস্টেম ইমেজেও হটওয়ার্ড শনাক্তকরণ বন্ধ করা যায়।
এই সমস্যার সমাধান করতে, আমরা নিম্নলিখিত পরিবর্তন করেছি:
- আসল হোস্ট অডিও ডেটা এখন ডিফল্ট হিসেবে স্কোয়েলচ করা হয়। অতিথি মাইক্রোফোন ব্যবহার করলে, হোস্টের অডিওর পরিবর্তে নীরবতা পাস করা হয়।
- আপনি যদি হোস্ট অডিও ডেটা ব্যবহার করতে চান, তাহলে এখন এক্সটেন্ডেড কন্ট্রোল > মাইক্রোফোন-এ গিয়ে এবং ভার্চুয়াল মাইক্রোফোন হোস্ট অডিও ইনপুট ব্যবহার করে বিকল্প চালু করে সেই বিকল্প চালু করতে পারবেন। এমুলেটর রিস্টার্ট করা হলে, এই বিকল্প অটোমেটিক বন্ধ হয়ে যায়।
CPU ব্যবহার সংক্রান্ত তদন্তের ব্যাপারে আপডেট
আমাদের প্রোজেক্ট মার্বেল তদন্তের সময়, আমরা লক্ষ্য করেছি যে এমুলেটরে উচ্চ সিপিইউ ব্যবহার সাধারণত নিম্নলিখিত তিনটি বিভাগে পড়ে:
আইডল অবস্থায়: Play Store-এ অটোমেটিক অ্যাপ আপডেট সংক্রান্ত ছবি
আমরা দেখেছি যে, ব্যবহারকারী লগ-ইন না করে থাকলেও, ইনস্টল করা সব অ্যাপ নির্দিষ্ট সময় অন্তর আপডেট হয়ে যায়। প্রসেস চলাকালীন, GMSCore এবং dex2oat-এ সিপিইউ ব্যবহার কোর x ১০০% (সাধারণত ~৪০০%) পর্যন্ত হয়। Play Store অ্যাপে অটোমেটিক অ্যাপ আপডেট বন্ধ করে আপনি এই সমস্যা সমাধান করতে পারবেন।
নিষ্ক্রিয় অবস্থায়: হটওয়ার্ড শনাক্তকরণ
হোম স্ক্রিনে থাকাকালীন এবং কোনও অ্যাপ ফোরগ্রাউন্ডে না থাকলে, CPU-এর ব্যবহার অনেক বেশি হতে পারে (~২৫% থেকে ৫০% পর্যন্ত)। হটওয়ার্ড শনাক্তকরণের কারণে এটি হয় যা ক্রমাগত হোস্টকে পিং করে। হোস্ট অডিও ইনপুট বন্ধ করে আপনি এই সমস্যার সমাধান করতে পারবেন না কারণ CPU-এর খরচ মূলত হোস্ট থেকে গেস্টের কাছে যেতে যে সময় লাগে তার কারণে হয়। তবে, Google অ্যাপ থেকে মাইক্রোফোন ব্যবহারের অনুমতি প্রত্যাহার করে আপনি এই সমস্যাটি সমাধান করতে পারেন।
অ্যাক্টিভ থাকার সময়, কখনও কখনও আইডল অবস্থায়: অ্যানিমেশন
সিপিইউ-এর অত্যধিক ব্যবহারের তৃতীয় কারণ হল অ্যানিমেশন। আমরা দেখেছি যে গ্রাফিক্স ড্রাইভার স্ট্যাক অপ্টিমাইজ করে আমরা CPU ব্যবহার কমাতে পারি, এমনকি এমুলেটর অলস না থাকলেও। Project Marble-এর অংশ হিসেবে আমরা গ্রাফিক্স ড্রাইভার অপ্টিমাইজেশন ইনক্রিমেন্টাল হিসেবে প্রকাশ করব।
২৮.০.২২ (২১ ডিসেম্বর, ২০১৮)
এই আপডেটে নিম্নলিখিত উন্নতি ও সমস্যার সমাধান অন্তর্ভুক্ত রয়েছে:
- দীর্ঘদিন ধরে চলা একটি সমস্যার সমাধান করা হয়েছে, যেখানে কিছু সেটিংসে, Mac এমুলেটর রিবুট হবে বা কুইকবুট সেভে কার্নেল প্যানিক হবে। (সমস্যা 120951634)
- RAM স্ন্যাপশট হিসেবে ম্যাপ করা ফাইল ব্যবহার করার সময়, ইমুলেটর এখন এক্সিট করার সময় ফাইল ম্যাপিং এক্সপ্লিসিটলি আনম্যাপ করে।
২৮.০.২০ (১১ ডিসেম্বর, ২০১৮)
এই আপডেটে নিম্নলিখিত উন্নতি ও সমস্যার সমাধান অন্তর্ভুক্ত রয়েছে:
- Windows-এ একটি সমস্যার সমাধান করা হয়েছে যার ফলে Intel GPU-এর নির্দিষ্ট কিছু মডেলের সাথে স্ন্যাপশট লোড করার সময় এমুলেটর ফ্রিজ হয়ে যাচ্ছিল।
- একটি নন-স্ট্যান্ডার্ড
ANDROID_SDK_HOMEলোকেশন ব্যবহার করার সময়unauthorizedADB ডিভাইস স্টেট হওয়ার কারণ সম্পর্কিত সমস্যার সমাধান করা হয়েছে। - Windows-এ একটি সমস্যার সমাধান করা হয়েছে যার কারণে CPU অ্যাক্সিলারেশন বন্ধ থাকা অবস্থায় সিস্টেম ইমেজ বুট করার সময় এমুলেটর ক্র্যাশ হয়ে যাচ্ছিল।
- পিক্সেলযুক্ত এমুলেটর ডিসপ্লে সমস্যার সমাধান করা হয়েছে। ডাউনস্যাম্পলিং এখন কাজ করা উচিত।
- macOS 10.14+ ভার্সনে একটি সমস্যার সমাধান করা হয়েছে যেখানে নতুন অ্যাক্সেসিবিলিটি নিরাপত্তা সেটিংসের সাথে ইন্টার্যাকশনের কারণে ভার্চুয়াল সিন ক্যামেরা মাউসলুক কন্ট্রোল খুব বেশি সংবেদনশীল হয়ে যেতে পারে।
- টাইমজোন গণনার ক্ষেত্রে একটি সমস্যার সমাধান করা হয়েছে যার ফলে এমুলেটর ঘড়ির সময় মাঝে মাঝে পরিবর্তিত হতে পারে।
- বিভিন্ন cocos2d এবং Unreal ইঞ্জিন অ্যাপে রেন্ডারিং সংক্রান্ত সমস্যার সমাধান করা হয়েছে।
- ওয়াই-ফাই পিয়ার-টু-পিয়ার-এর জন্য এমুলেটরে সহায়তা যোগ করা হয়েছে।
লেটেস্ট Pie Play Store ইমেজ ব্যবহার করলে, দুটি এমুলেটর এখন সরাসরি ওয়াই-ফাইয়ের মাধ্যমে একে অপরের সাথে কথা বলতে পারবে। ওয়াই-ফাই পিয়ার-টু-পিয়ার ব্যবহার করতে, একই
-wifi-server-portএবং-wifi-client-portআর্গুমেন্ট সহ দুটি AVD চালু করুন:emulator @<server-avd-name> -wifi-server-port 9999emulator @<client-avd-name>-wifi-client-port 9999
- Android গেস্টে ক্যামেরা সেটিংয়ের সাথে মানানসই করার জন্য, Windows-এ আরও ওয়েবক্যামের জন্য সহায়তা যোগ করা হয়েছে। এর জন্য, যেকোনও বেমানান ফ্রেমের সাইজ নিয়ে, ডায়নামিক উপায়ে সেগুলির সাইজ পরিবর্তন করা হয়।
২৮.০.১৬ (নভেম্বর ২০১৮)
এই আপডেটে বেশ কিছু নতুন ফিচার, আগে থেকে থাকা ফিচারের উন্নতি এবং সমস্যার সমাধান অন্তর্ভুক্ত আছে।
রিসোর্স ব্যবহার
এমুলেটর এখন সামগ্রিকভাবে কম RAM ব্যবহার করে, বিশেষ করে API লেভেল ২৮ বা তার বেশি সহ সিস্টেম ইমেজ ব্যবহার করার সময়। এইসব সিস্টেম ইমেজে গেস্ট-সাইড গ্রাফিক্স ড্রাইভারের জন্য উন্নত মেমরির ব্যবহার অন্তর্ভুক্ত।
এছাড়াও, আমরা নিম্নলিখিত ক্ষেত্রে রিসোর্স ব্যবহার উন্নত করেছি:
- দীর্ঘ সময় ধরে চলা টেস্টের সময় ইমুলেটর মেমরির ব্যবহার কমানো হয়েছে। দীর্ঘ সময় ধরে চলা টেস্টের সময় মেমরির ব্যবহার নিয়ে এখনও সমস্যা হলে, Issue Tracker-এ আপনার ইউজ কেস বর্ণনা করে একটি সমস্যা তৈরি করুন।
- অ্যানিমেশন সহ অ্যাপ চালানোর সময় CPU-এর ব্যবহার কমানো হয়েছে।
- Windows-এ QEMU AIO কনটেক্সট লিক হওয়ার সমস্যা সমাধান করা হয়েছে।
একই সাথে একটি AVD-এর একাধিক ইনস্ট্যান্স রান করুন
আপনি এখন একই AVD-এর একাধিক ইনস্ট্যান্স লঞ্চ করতে এবং সেগুলি একসাথে চালাতে পারবেন। প্রথম ইনস্ট্যান্সের পরে আপনি যে ইনস্ট্যান্সগুলি চালু করেন সেগুলি শুধুমাত্র পড়ার জন্য এবং তাদের গেস্ট ভার্চুয়াল ডিস্কে পরিবর্তনগুলি প্রস্থান করার সময় বাতিল করা হয়।
একই সময়ে একই AVD-এর একাধিক ইনস্ট্যান্স চালাতে, প্রথম ইনস্ট্যান্সের পরে
-read-only ফ্ল্যাগ ব্যবহার করে কমান্ড লাইন থেকে যেকোনও ইনস্ট্যান্স লঞ্চ করুন।
Android ইমেজের রাইটেবল অংশের সাথে যুক্ত QCOW2 ফাইল কপি করার মাধ্যমে এই ফিচারটি
সম্ভব হয়েছে। ডিস্ক স্টোরেজে খালি জায়গা ম্যানেজ করতে আপনাকে সাহায্য করার জন্য, আমরা qemu-img কমান্ড লাইন টুলও বান্ডেল করেছি যাতে আপনি একাধিক ইনস্ট্যান্স লঞ্চ করার আগে QCOW2 ফাইল প্রি-কমিট করতে পারেন।
এছাড়াও, ফাইল-ব্যাকড গেস্ট RAM স্ন্যাপশট ফিচারের সাথে একসাথে ব্যবহার করা হলে, একাধিক AVD ইনস্ট্যান্স কপি-অন-রাইট গেস্ট RAM-এর সাধারণ সোর্স হিসেবে প্রাইমারি AVD ক্যুইকবুট স্ন্যাপশট শেয়ার করে। এই প্রপার্টির অর্থ হল, ইনস্ট্যান্সগুলি তাদের বেশিরভাগ RAM শেয়ার করে। এই ফিচার ব্যবহার করে এমন টেস্ট রান করুন যার জন্য একাধিক ডিভাইস সমান্তরালভাবে রান করতে হয়।
আপনার সাধারণ ইন্টার্যাক্টিভ বা CI ওয়ার্কফ্লোর অংশ হিসেবে সম্ভাব্য ব্যবহারের ক্ষেত্রে আপনার মতামতকে আমরা গুরুত্ব দিই। Issue Tracker-এ সমস্যা তৈরি করুন বা পক্ষে ভোট দিন।
ফাইল-ব্যাকড গেস্ট RAM স্ন্যাপশট
ফাইল হিসেবে গেস্ট RAM প্রি-অ্যালোকেট ও ম্যাপ করার মাধ্যমে, এমুলেটর এখন রানটাইমের সময় কুইকবুট স্ন্যাপশট সেভ করতে পারে, এক্সিট করার সময় সব কাজ করার পরিবর্তে। বর্তমানে আপনার এমুলেটর বন্ধ করার সময় সেভ হতে বেশি সময় লাগলে, আপনার Quickboot পারফর্ম্যান্স উন্নত করতে এই ফিচার চালু করুন। ডিফল্ট হিসেবে, বেরিয়ে আসার সময় Quickboot স্ন্যাপশট সেভ করা হয় এবং প্রতিবার আবার লোড করা হয়, যেমন কোনও আসল ডিভাইস সাসপেন্ড করা এবং আবার চালু করা।
Android গেস্ট RAM এখন ডিফল্ট হিসেবে অটোমেটিক সেভ হয়, তাই আপনি যদি ডিভাইসের কোনও স্ট্যাটাস নির্দিষ্ট করতে চান এবং সেই স্ট্যাটাস থেকে বারবার লোড করতে চান, তাহলে আপনাকে এমুলেটরকে প্রতিটি সেশনের পরে পরিবর্তনগুলি বাতিল করতে বলতে হবে। আপনি নিম্নলিখিত উপায়ে এটি করতে পারবেন:
- কমান্ড লাইন থেকে এমুলেটর লঞ্চ করার সময়
-no-snapshot-saveবা-read-onlyফ্ল্যাগ ব্যবহার করুন। - এক্সটেন্ডেড কন্ট্রোল > স্ন্যাপশট > সেটিংস বিকল্পে যান এবং বর্তমান স্ট্যাটাস কি Quickboot-এ অটোমেটিক সেভ করবেন? বিকল্পটি না-তে পরিবর্তন করুন।
- এই বিকল্প বেছে নেওয়ার পরে আপনাকে এমুলেটর রিস্টার্ট করতে হবে। এমুলেটর অটো-সেভ করার জন্য সেট করা থাকলে, আপনি চেকপয়েন্ট সেট করার জন্য নিম্নলিখিত কমান্ড রান করতে পারবেন:
আপনি এই কমান্ড রান করার পরে, এমুলেটর Quickboot স্ন্যাপশট সেই চেকপয়েন্টে থাকবে। আপনার চেকপয়েন্ট থেকে এমুলেটর লোড করতে একই কমান্ড আবার রান করুন।adb emu avd snapshot remap 0
Snapshots UI-এর মাধ্যমে নেওয়া এবং লোড করা স্ন্যাপশটগুলি আগের মতোই কাজ করে, কোনও ফাইল ম্যাপিং ছাড়াই।
Quickboot কীভাবে কাজ করে তার উপর এটি একটি বড় পরিবর্তন, তাই এটি Quickboot-এর পারফর্ম্যান্স উন্নত করে কিনা এবং এটি ব্যবহার করার সময় আপনি কী ধরনের সমস্যার সম্মুখীন হন সে সম্পর্কে আপনার মতামত পেলে আমরা অত্যন্ত কৃতজ্ঞ থাকব। আপনি সমস্যার সম্মুখীন হলে, আপনার
~/.android/advancedFeatures.ini ফাইলে নিম্নলিখিত লাইন যোগ করে এই ফিচার
বন্ধ করতে পারবেন:
QuickbootFileBacked = off
আপনি যখন কোনও স্ন্যাপশট থেকে এমুলেটর চালু করেন (-snapshot
কমান্ড লাইন বিকল্প ব্যবহার করে অথবা AVD ম্যানেজারে কোনও স্ন্যাপশট থেকে লঞ্চ করে), তখন
এমুলেটর, কুইকবুট স্ন্যাপশটের জন্য অটো-সেভ করা এবং বন্ধ করার সময় কুইকবুট
স্ন্যাপশট সেভ করা, দুটিই বন্ধ করে দেয়। এটি অনিচ্ছাকৃতভাবে কুইকবুট স্ন্যাপশট ওভাররাইট হওয়ার সম্ভাবনা কমায় এবং
ফাইল-ব্যাকড কুইকবুট স্ন্যাপশট ব্যবহার করে না এমন স্লো ফলব্যাক পাথ এড়ায়।
QEMU 2.12
আমরা QEMU-এর ভেরিয়েন্ট QEMU 2.9 থেকে QEMU 2.12-এ রিবেস করেছি। এই আপডেটে নিম্নলিখিত QEMU পরিবর্তন অন্তর্ভুক্ত আছে:
- https://wiki.qemu.org/ChangeLog/2.10
- https://wiki.qemu.org/ChangeLog/2.11
- https://wiki.qemu.org/ChangeLog/2.12
Android Emulator-কে প্রভাবিত করে এমন কিছু উল্লেখযোগ্য পরিবর্তন এখানে দেওয়া হল:
- x86:
gdbstubএখন SSE রেজিস্টারে অ্যাক্সেস প্রদান করে। - ডিস্ক ইমেজ: ইমেজ লকিং যোগ করা হয়েছে এবং ডিফল্ট হিসেবে চালু করা হয়েছে। হোস্ট OFD বা posix লকিং সাপোর্ট করলে, একাধিক QEMU প্রসেস একই ইমেজে লিখতে পারে না, যদি না বিকল্পগুলি অন্যভাবে নির্দিষ্ট করা হয়।
qemu-img: qemu-img resizeছবির নতুন অংশ আগে থেকে বরাদ্দ করার সুবিধা দেয়।- QCOW2 সঙ্কুচিত করার সুবিধা এখন
qemuএবংqemu-img-এ কাজ করে।
অ্যাক্সেসিবিলিটি
- স্ক্রিন রিডার সংক্রান্ত সমস্যার সমাধান করা হয়েছে এবং স্ক্রিন রেকর্ড ও স্ন্যাপশট UI-তে এইসব টুলের জন্য আরও ভালো সহায়তা যোগ করা হয়েছে।
- কুইক বুট বিজ্ঞপ্তি আইকন এমনভাবে তৈরি করা হয়েছে যাতে বর্ণান্ধ ব্যবহারকারীরা আরও সহজে অ্যাক্সেস করতে পারেন।
গ্রাফিক্স
- OpenGL ES ভার্টেক্স অ্যারে পয়েন্টারের জন্য হতে পারে এমন আউট-অফ-বাউন্ডস মেমরি অ্যাক্সেস সংক্রান্ত সমস্যার সমাধান করা হয়েছে।
- কিছু পুরনো GPU-তে OpenGL 2.1 বা তার পরের ভার্সন (যা প্রয়োজন) কাজ করে না অথবা অন্যান্য নির্ভরযোগ্যতা সংক্রান্ত সমস্যা থাকে। এইসব সমস্যার কারণে এমুলেটর চালু হওয়ার সময় ক্র্যাশ করতে পারে, ফ্রিজ হয়ে যেতে পারে অথবা ডিফল্ট GPU সেটিংয়ে ব্যবহারযোগ্য নাও হতে পারে। এমুলেটর এখন অটোমেটিক Swiftshader রেন্ডারারে পাল্টে যায় যদি এটি শনাক্ত করে যে এই GPU ব্যবহার করা হচ্ছে।
eglSwapBuffers-এর সময়FBO != 0বাউন্ড করা থাকলে, এমুলেটর সঠিক ফ্রেমবাফার পোস্ট করতে না পারার সমস্যার সমাধান করা হয়েছে।- ভার্চুয়াল Android ডিসপ্লে শুধুমাত্র উপরে বাঁদিকের কোণে দেখা যাওয়ার সমস্যা সমাধান করা হয়েছে। আমরা মনে করি যে Qt এনভায়রনমেন্ট ভেরিয়েবেল ভুলভাবে কনফিগার করার কারণে এটি হয়েছে। এমুলেটর এখন Qt স্কেলিং-সম্পর্কিত সব এনভায়রনমেন্ট ভেরিয়েবল ওভাররাইড করে।
- একটি সমস্যার সমাধান করা হয়েছে যেখানে স্ন্যাপশট থেকে GLES1 অ্যাপ লোড করার সময় কিছু পরিস্থিতিতে এমুলেটর ক্র্যাশ হয়ে যায়।
- OpenGL-এ কনকারেন্সি সংক্রান্ত সমস্যা এবং রেন্ডার থ্রেড লঞ্চ করার সমস্যা সমাধান করা হয়েছে, যার ফলে ডবল ফ্রি বা ডেটা নষ্ট হয়ে যেতে পারে।
- Android Emulator এখন ASTC LDR কম্প্রেসড টেক্সচার সাপোর্ট (
GL_KHR_texture_compression_astc_ldr) করে, যা API লেভেল ২৮ বা তার থেকে উন্নত ভার্সনের সিস্টেম ইমেজের জন্য প্রযোজ্য। - বেশিরভাগ আধুনিক GPU এখন
GLESDynamicVersionফিচার ফ্ল্যাগ ব্যবহার না করেই ডিফল্ট হিসেবে চালু থাকা OpenGL ES 3.x-এর সাথে এমুলেটর লঞ্চ করতে পারবে। -gpu guest(গেস্টে সফ্টওয়্যার রেন্ডারিং) বন্ধ করা হয়েছে। API লেভেল ২৮ বা তার বেশি ভার্সনের জন্য সিস্টেম ইমেজ এখন অটোমেটিক পরিবর্তে Swiftshader (-gpu swiftshader_indirect) ব্যবহার করার জন্য সুইচ করে।-no-windowফ্ল্যাগ ব্যবহার করে কমান্ড লাইন থেকে এমুলেটর চালু করা হলে, ডিফল্ট রেন্ডারার এখন Swiftshader।
লোকেশন
- এমুলেটর এখন অক্ষাংশ এবং দ্রাঘিমাংশের অবস্থানের সাথে বিয়ারিং আপডেট করতে পারে। ম্যাগনেটোমিটার ভার্চুয়াল সেন্সর, GPX বা KML ফাইল প্লেব্যাক করার সময় মোশন অনুমান করে চৌম্বকীয় উত্তর দিকে নিজেকে ডাইনামিকভাবে অ্যাডজাস্ট করে।
- এখন লোকেশন পৃষ্ঠায় ডিভাইসের স্পিড সেট করা যাবে।
- GPX বা KML ফাইল প্লেব্যাক করার সময়, স্পিড অটোমেটিক সেট করা হয় এবং প্লেব্যাক শেষ হলে স্পিড শূন্যে সেট করা হয়।
- উচ্চতা আর -১,০০০ থেকে +১০,০০০ মিটারের মধ্যে সীমাবদ্ধ নেই।
- এক্সটেন্ডেড কন্ট্রোল উইন্ডো অন্তত একবার খোলা না হলে, ভার্চুয়াল জিপিএস লোকেশন নির্দিষ্ট সময় অন্তর আপডেট না হওয়ার সমস্যা সমাধান করা হয়েছে।
ক্যামেরা
Windows-এ এখন আরও বেশি ওয়েবক্যাম কাজ করে কারণ ইমুলেটর ডায়নামিক্যালি ওয়েবক্যাম থেকে পাওয়া ক্যামেরা ফ্রেমের সাইজ পরিবর্তন করে। এছাড়াও, এই ফিচার ফ্রেম ডেলিভারিতে সমস্যার কারণে এমুলেটর হ্যাং হওয়া আটকায়।
Play Store
Play Store-এর ছবিতে ডিস্ক স্টোরেজে খালি জায়গা শেষ হয়ে যাওয়ার সমস্যা সমাধান করতে, এমুলেটর এখন নতুন Play Store AVD-এর সাথে রান করার সময় অটোমেটিক userdata পার্টিশনকে ৬ জিবিতে ছোট বড় করে।
সাধারণ কোয়ালিটি সংক্রান্ত উন্নতি ও সমাধান
- কিছু ব্যবহারকারী জানিয়েছেন যে এমুলেটর ধীরে চলছে। আমরা একটি সম্ভাব্য কারণ শনাক্ত করেছি যেখানে এমুলেটরের টেম্প ডিরেক্টরিতে অনেক বেশি পুরনো ফাইল থাকে। সমাধান হিসেবে, এমুলেটর আর সেই ডিরেক্টরিতে ADB লাইভনেস
চেক ফাইল স্টোর করে না। তবে, সেই ফোল্ডারের কন্টেন্ট মুছে দিলেও
সমস্যার সমাধান হতে পারে। আপনার অপারেটিং সিস্টেমের উপর নির্ভর করে,
ফোল্ডারটি নিম্নলিখিত লোকেশনগুলির মধ্যে একটিতে অবস্থিত:
- Windows:
C:\Users\<username>\AppData\Local\Temp\AndroidEmulator\* - macOS বা Linux:
/tmp/android-<username>/*
- Windows:
- পর্যাপ্ত ফ্রি RAM না থাকার কারণে এমুলেটর চালু করতে না পারলে, এখন একটি সমস্যার মেসেজ দেখানো হয়। আপনি Windows ব্যবহার করলে এবং RAM খালি আছে বলে লক্ষ্য করলে, কিন্তু এখনও এমুলেটর চালু করতে না পারলে, কমিট চার্জ হয়ত অতিক্রম করে গেছে। এই সমস্যার ব্যাপারে সাহায্য পেতে, এমুলেটর সংক্রান্ত সমস্যার সমাধান পৃষ্ঠা দেখুন।
-sysdirকমান্ড লাইন বিকল্প এখন অনুমান করা সিস্টেম ইমেজ ডিরেক্টরিকে সঠিকভাবে ওভাররাইড করে।- ভার্চুয়াল মডেম এখন মডেল অ্যাক্টিভিটি তথ্য
+MAIকোয়েরি সাপোর্ট করে। - মেমরি লিক, মেমরি করাপশন ও সিপিইউ ব্যবহার সংক্রান্ত বিভিন্ন সমস্যার সমাধান করা হয়েছে। আপনি যদি ক্র্যাশ, মেমরি লিক বা অন্যান্য উচ্চ রিসোর্স ব্যবহার সংক্রান্ত সমস্যার সম্মুখীন হন, তাহলে Issue Tracker-এ একটি সমস্যা তৈরি করুন।
- macOS 10.14-এ আবার দেখা দেওয়া একটি সমস্যার সমাধান করা হয়েছে যেখানে এমুলেটরের সাথে ব্লুটুথ হেডসেট ব্যবহার করলে অডিওর কোয়ালিটি সব জায়গায় খারাপ হয়ে যেত। এটি প্রতিরোধ করতে, এমুলেটর এখন macOS-এ রান করার সময় ব্লুটুথ অডিও ব্যবহার করা এড়িয়ে চলে। (সমস্যা 37070892)
- Windows-এ একটি সমস্যার সমাধান করা হয়েছে যেখানে এমুলেটর ঘড়ি সঠিক টাইমজোনে থাকত না।
- স্পিনিং হার্ডড্রাইভ (HDD) সহ Linux সিস্টেমে এমুলেটর স্লো হয়ে যাওয়া এবং হ্যাং হওয়ার সমস্যা সমাধান করা হয়েছে।
- কিছু কম্পাইল সংক্রান্ত সতর্কতা ঠিক করা হয়েছে যা macOS-এ স্ট্যাক করাপশনের কারণ হতে পারে।
- হ্যাং হয়ে যাওয়া সংক্রান্ত বিভ্রান্তিকর রিপোর্ট দেখাতে পারে এমন সমস্যার সমাধান করা হয়েছে।
- থ্রেড পুল নষ্ট করার সাথে সম্পর্কিত সমস্যার সমাধান করা হয়েছে। এর ফলে, কোনও একটি থ্রেড সফলভাবে তৈরি না হলে ক্র্যাশ হতে পারত।
- macOS-এ টাইমার নির্ভরযোগ্য না হওয়ার কারণে হ্যাং হয়ে যাওয়া এবং অন্যান্য অদ্ভুত আচরণ করার সমস্যা সমাধান করা হয়েছে। macOS-এ এমুলেটর হ্যাং হয়ে গেলে, Issue Tracker-এ সমস্যাটি জানান।
- ইমুলেটর বন্ধ করার সময় UI বন্ধ হয়ে গেলেও ইমুলেটর বন্ধ না হওয়ার সমস্যার সমাধান করা হয়েছে।
/dev/urandom-এর অনেক ইনস্ট্যান্স খোলার কারণে ক্র্যাশ হওয়া সহ বিক্ষিপ্ত ক্র্যাশ সংক্রান্ত সমস্যার সমাধান করা হয়েছে।- প্রথমবার চালু করার পরে এমুলেটর চালু না হওয়ার সমস্যার সমাধান করা হয়েছে যদি ADB জোরপূর্বক বন্ধ করা হয়।
- MIPS বিল্ড সরিয়ে দেওয়া হয়েছে। আপনার এখনও MIPS-এর প্রয়োজন হলে, Issue Tracker-এ সমস্যা তৈরি করুন।
- স্ন্যাপশট লোড করার সময় ADB কানেকশন খারাপ হয়ে যাওয়ার সমস্যা সমাধান করা হয়েছে।
- ডিভাইসের ওরিয়েন্টেশন AVD-এর ডিফল্ট ওরিয়েন্টেশনের থেকে আলাদা হলে, স্ন্যাপশট আবার চালু করার সময় এমুলেটর উইন্ডোতে আফটারইমেজ বা টেলিপোর্ট অফস্ক্রিন সংক্রান্ত সমস্যার সমাধান করা হয়েছে।
- স্ন্যাপশট সেভ করার সময় ক্র্যাশ হওয়া সংক্রান্ত সমস্যার সমাধান করা হয়েছে।
- Linux-এ, btrfs ফাইলসিস্টেমের কারণে অত্যন্ত ধীর গতিতে কাজ হতে পারে কারণ এমুলেটর
অটোমেটিক স্ন্যাপশট সেভ করে এবং এর ভার্চুয়াল ডিস্ক ডিভাইসের জন্য
কপি-অন-রাইট ব্যবহার করে। আমরা সাজেস্ট করি যে আপনি
~/.android/avdডিরেক্টরি পরিষ্কার করুন এবং খালি~/.android/avdডিরেক্টরিতে নিম্নলিখিত কমান্ড রান করুন: এটি এমন একটি ফোল্ডারে নতুন স্ন্যাপশট তৈরি করে যেখানে কপি-অন-রাইট বন্ধ করা আছে।chattr +C
HAXM 7.3.2
আমরা HAXM 7.3.2-এর কথা আবার উল্লেখ করতে চাই কারণ এমুলেটরে সাম্প্রতিক সিস্টেম ইমেজ সঠিকভাবে চালানোর জন্য এটি ইনস্টল করতেই হবে। HAXM 7.3.2 আগে থেকেই স্টেবল চ্যানেলে উপলভ্য থাকা উচিত এবং https://github.com/intel/haxm/releases থেকে ম্যানুয়ালিও ইনস্টল করা যেতে পারে।
HAXM-এর এই ভার্সন যেসব সমস্যার সমাধান করেছে তার মধ্যে কয়েকটি এখানে উল্লেখ করা হল:
- সাম্প্রতিক Linux কার্নেল (>= ৪.৬) ব্যবহার করে এমন গেস্ট OS-এর র্যান্ডম ক্র্যাশ সংক্রান্ত সমস্যার সমাধান করা হয়েছে। যেমন, Ubuntu 18.04 (#39, #74)।
- x86 নির্দেশ এমুলেটর সংক্রান্ত সমস্যার সমাধান করা হয়েছে যার ফলে হোস্ট ক্র্যাশ হতে পারত (#93)।
৩২-বিট Windows-এর ব্যবহার বন্ধ করা
কম ব্যবহার এবং বেশি রক্ষণাবেক্ষণ খরচের কারণে, আমরা Windows-এ চলা Android Emulator-এর ৩২-বিট ভার্সন বন্ধ করার পরিকল্পনা করছি। আমরা Android Emulator-এর ৩২-বিট ভার্সন সরিয়ে দেওয়া এবং বন্ধ করার আগে একটি ট্রানজিশন প্ল্যান নিয়ে আসব। তবে, এই পরিবর্তন সম্পর্কে আপনার কোনও মতামত বা সমস্যা থাকলে আমাদের জানান।
আপনি বর্তমানে Windows-এ রান করে এমন Android Emulator-এর 32-বিট ভার্সনের উপর নির্ভর করলে, Issue Tracker-এ আমাদের জানান এবং ভবিষ্যতে আমরা কীভাবে আপনার সাথে আরও ভালোভাবে কাজ করতে পারি তা বলুন।
২৭.৩.১০ (আগস্ট ২০১৮)
এই আপডেটে নিম্নলিখিত ত্রুটি সমাধান অন্তর্ভুক্ত রয়েছে:
RAM সাইজ কনফিগারেশন সংক্রান্ত সমস্যার সমাধান
কিছু ব্যবহারকারী জানিয়েছেন যে এমুলেটর ধীরে চলছে। আমরা একটি সম্ভাব্য কারণ শনাক্ত করেছি যেখানে AVD-এর config.ini ফাইলে AVD RAM সাইজ ভুলভাবে সেট করা হচ্ছে।
এই সমস্যা কমাতে, এমুলেটর সেইসব ছবির জন্য ন্যূনতম RAM লেভেল বাড়িয়ে দেয় যেগুলি
API লেভেল ২৬ বা তার বেশি ব্যবহার করে Android Studio-এর ডিফল্ট লেভেল ১৫৩৬ এমবি পর্যন্ত। আপনার
AVD-এর config.ini ফাইল মেগাবাইটে hw.ramSize তালিকাভুক্ত না হলে,
Issue Tracker-এ সমস্যা তৈরি করুন।
আপনি নিম্নলিখিত লোকেশনে config.ini ফাইলটি খুঁজে পাবেন:
~/.android/avd/<avdname>.avd/config.ini
২৭.৩.৯ (জুলাই ২০১৮)
এই আপডেটে নিম্নলিখিত উন্নতি ও সমস্যার সমাধান অন্তর্ভুক্ত রয়েছে:
Windows Hypervisor Platform-এর জন্য উন্নত ত্রুটি মেসেজ
কিছু ব্যবহারকারী WHPX এমুলেটর চালু করার সময় Windows Hypervisor Platform (WHPX)
কেন চালু হয়নি তা ডায়াগনসিস করতে সমস্যার সম্মুখীন হচ্ছিলেন। এইসব সমস্যা
ডায়াগনসিস করার ব্যাপারে আপনাকে সাহায্য করতে, আমরা আরও তথ্যপূর্ণ ত্রুটি মেসেজ যোগ করেছি। আপনি
-verbose ফ্ল্যাগ ব্যবহার করে কমান্ড লাইন থেকে এমুলেটর রান করার মাধ্যমে এইসব সমস্যার মেসেজ
চালু করতে পারবেন।
সাধারণ সমাধান
- ক্যামেরা অ্যাপে স্ন্যাপশট লোড করার সময় OpenGL সংক্রান্ত সমস্যার সমাধান করা হয়েছে।
২৭.৩.৮ (জুলাই ২০১৮)
এই আপডেটে বেশ কিছু নতুন ফিচার, আগে থেকে থাকা ফিচারের উন্নতি এবং সমস্যার সমাধান অন্তর্ভুক্ত আছে।
স্ন্যাপশট
আপনি এখন কোনও নির্দিষ্ট ডিভাইস কনফিগারেশনের জন্য একাধিক AVD স্ন্যাপশট সেভ করতে পারবেন এবং এমুলেটর চালু করার সময় সেভ করা স্ন্যাপশটের মধ্যে থেকে কোনটি লোড করতে চান তা বেছে নিতে পারবেন।
Android Studio 3.2 Canary 13 থেকে শুরু করে, প্রতিটি ডিভাইস কনফিগারেশনে ভার্চুয়াল ডিভাইস কনফিগারেশন ডায়ালগের উন্নত সেটিংসে একটি কন্ট্রোল অন্তর্ভুক্ত থাকে যার সাহায্যে আপনি AVD শুরু করার সময় কোন AVD স্ন্যাপশট লোড করতে হবে তা নির্দিষ্ট করতে পারবেন।
স্ন্যাপশট ফিচারের এই সম্প্রসারণের জন্য, আমরা এক্সটেন্ডেড কন্ট্রোল ডায়ালগে একটি স্ন্যাপশট বিভাগ যোগ করেছি। এই নতুন প্যানে AVD স্ন্যাপশট সেভ ও লোড করার কন্ট্রোল আছে, এর মধ্যে কুইক-বুট স্ন্যাপশট সেভ ও লোড করার কন্ট্রোলও আছে যা আগে সেটিংস প্যানে ছিল।
আপনি প্রতিটি সেভ করা স্ন্যাপশটের নাম ও বিবরণ এডিট করতে পারবেন।
আরও জানতে, স্ন্যাপশট দেখুন।
HAXM 7.2.0
HAXM 7.2.0 এখন সব চ্যানেলে উপলভ্য।
এই আপডেটে সমস্যার সমাধান এবং বিপুল পরিমাণ RAM-এর জন্য উন্নত সহায়তা অন্তর্ভুক্ত রয়েছে। এছাড়াও, এই HAXM আপডেট এবং Emulator 27.3 ও তার পরবর্তী ভার্সনের মাধ্যমে, ভার্চুয়াল ডিভাইস চালু হওয়ার সময় সম্পূর্ণ স্ন্যাপশট লোড করার পরিবর্তে, স্ন্যাপশট চাহিদা অনুযায়ী RAM-এ কন্টেন্ট লোড করে। এই পরিবর্তনের ফলে স্ন্যাপশট লোড করার জন্য প্রয়োজনীয় সময় অনেক কমে যাবে।
বিস্তারিত জানতে, VM অ্যাক্সিলারেশন কনফিগার করা দেখুন।
২৭.২.৯ (মে ২০১৮)
এই আপডেটে বেশ কিছু নতুন ফিচার, আগে থেকে থাকা ফিচারের উন্নতি এবং সমস্যার সমাধান অন্তর্ভুক্ত আছে।
স্ক্রিন রেকর্ডিং
আপনি এখন Android Emulator থেকে ভিডিও এবং অডিও রেকর্ড করতে এবং রেকর্ডিংটি WebM বা অ্যানিমেটেড GIF ফাইলে সেভ করতে পারবেন।
স্ক্রিন রেকর্ডিং কন্ট্রোল এক্সটেন্ডেড কন্ট্রোল উইন্ডোর স্ক্রিন রেকর্ড ট্যাবে রয়েছে।
পরামর্শ: আপনি Control + Shift + R (Mac-এ Command + Shift + R) প্রেস করে স্ক্রিন রেকর্ডিং কন্ট্রোল খুলতে পারবেন।
স্ক্রিন রেকর্ডিং শুরু করতে, স্ক্রিন রেকর্ড ট্যাবে রেকর্ডিং শুরু করুন বোতামে ক্লিক করুন। রেকর্ডিং বন্ধ করতে, রেকর্ডিং বন্ধ করুন বিকল্পে ক্লিক করুন।
রেকর্ড করা ভিডিও চালানো ও সেভ করার কন্ট্রোল স্ক্রিন রেকর্ড ট্যাবের নিচে রয়েছে। ভিডিও সেভ করতে, ট্যাবের নিচে থাকা মেনু থেকে WebM বা GIF বেছে নিন এবং সেভ করুন বিকল্পে ক্লিক করুন।
এছাড়াও, আপনি এমুলেটর থেকে স্ক্রিন রেকর্ডিং রেকর্ড ও সেভ করতে পারবেন। এর জন্য কমান্ড লাইনে নিম্নলিখিত কমান্ড ব্যবহার করুন:
adb emu screenrecord start --time-limit 10 [path to save video]/sample_video.webm
স্ক্রিনশট
আপনি নিম্নলিখিত কমান্ডগুলির মধ্যে যেকোনও একটির মাধ্যমে কমান্ড লাইন থেকে স্ক্রিনশট নিতে পারবেন:
screenrecord screenshot [destination-directory]adb emu screenrecord screenshot [destination-directory]
স্ক্রিনশট PNG ফর্ম্যাটে সেভ করা হয়।
ভার্চুয়াল সিন ক্যামেরা ও ARCore
ARCore-এর সাহায্যে অগমেন্টেড রিয়েলিটি (AR) অ্যাপ ডেভেলপ ও পরীক্ষা করা এখন আরও সহজ হয়ে গেছে। নতুন ভার্চুয়াল সিন ক্যামেরার সাহায্যে আপনি ভার্চুয়াল পরিবেশে আপনার AR অভিজ্ঞতা নিয়ে পরীক্ষা করতে পারবেন।
এমুলেটরে ভার্চুয়াল সিন ক্যামেরা ব্যবহার করার ব্যাপারে তথ্য পেতে, Android এমুলেটরে AR অ্যাপ রান করুন দেখুন।
Pixel ডিভাইসে Google Play Store-এর ছবি
Pixel এবং Pixel 2 ডিভাইসের ছবির জন্য Google Play Store এখন চালু করা হয়েছে। এটি Android Studio 3.2 এবং পরবর্তী ভার্সনের AVD Manager-এ Play Store কলামে Google Play লোগোর মাধ্যমে দেখানো হয়। Google Play Store চালু করা আছে এমন AVD-তে এক্সটেন্ডেড কন্ট্রোল ডায়ালগে Google Play ট্যাব থাকে যা ডিভাইসে Google Play পরিষেবা আপডেট করার জন্য একটি সুবিধাজনক বোতাম প্রদান করে।
স্ন্যাপশট
আপনি এখন এমুলেটর রিস্টার্ট না করেই কুইক বুট স্ন্যাপশট লোড করতে পারবেন। স্ন্যাপশট লোড করতে, এক্সটেন্ডেড কন্ট্রোল উইন্ডো থেকে সেটিংস পৃষ্ঠায় যান এবং এখনই লোড করুন বোতামে ক্লিক করুন।
রিসোর্স ব্যবহারের দক্ষতা উন্নত করতে এবং প্রতিটি অপারেশনে যে সময় লাগে তা কমাতে আমরা স্ন্যাপশট লোড এবং সেভ করার ক্ষেত্রে অনেক উন্নতি করেছি। আপনি যদি এখনও অস্বাভাবিকভাবে দীর্ঘ সেভ করার অভিজ্ঞতা পান, তাহলে অনুগ্রহ করে একটি সমস্যা ফাইল করুন, আপনার সিপিইউ, র্যাম এবং চলমান যেকোনো অ্যান্টিভাইরাস / ফায়ারওয়াল / নিরাপত্তা সফ্টওয়্যারের সেটিংসের বিবরণ প্রদান করুন।
Skia-এর মাধ্যমে রেন্ডার করা হচ্ছে
API 27 বা তার পরবর্তী ভার্সনের জন্য ছবি ব্যবহার করার সময়, এমুলেটর Skia-এর মাধ্যমে Android UI রেন্ডার করতে পারে, যা আরও মসৃণ ও দক্ষভাবে রেন্ডার করতে পারে।
আপাতত, Skia ব্যবহার করার জন্য আপনাকে এটি স্পষ্টভাবে চালু করতে হবে।
Skia রেন্ডারিং চালু করতে, adb শেলে নিম্নলিখিত কমান্ড ব্যবহার করুন:
su setprop debug.hwui.renderer skiagl stop start
ক্যামেরা
Windows-এ, Android Emulator এখন ওয়েবক্যাম ব্যাক এন্ড হিসেবে Media Foundation ব্যবহার করে, যা ওয়েবক্যাম ক্যাপচারের জন্য পারফর্ম্যান্স এবং ফ্রেম রেটকে ব্যাপকভাবে উন্নত করে, ৭২০p ৩০ FPS পর্যন্ত।
Mac-এ, আপনি এখন একসাথে webcam0 এবং webcam1 ব্যবহার করতে পারবেন।
বিবিধ
-phone-number-prefix কমান্ড-লাইন বিকল্পটি পরিবর্তন করে
-phone-number [number] করা হয়েছে, যা সম্পূর্ণ ফোন নম্বর
সেট করার অনুমতি দেয়।
আপনি এখন আলফানিউমেরিক এসএমএস অ্যাড্রেস ব্যবহার করতে পারবেন।
সমাধান করা
- Android Emulator-এর Linux ভার্সন এখন আধুনিক Clang C++ টুলচেন ব্যবহার করে তৈরি করা হয়েছে। এই পরিবর্তনটি libGL এবং libstdc++ সমস্যার কারণে এমুলেটর চালু না হওয়ার সমস্যার সমাধান করে।
- ক্র্যাশ ও হ্যাং হওয়ার একাধিক কারণের সমাধান করা হয়েছে।
- ডিস্ক স্টোরেজে পর্যাপ্ত খালি জায়গা না থাকার কারণে ক্র্যাশ ও হ্যাং হওয়া এড়াতে, এমুলেটর এখন স্টার্টআপে পর্যাপ্ত খালি জায়গা আছে কিনা তা চেক করে এবং কমপক্ষে ২ জিবি খালি না থাকলে চালু হবে না।
- কিছু Unity গেম রেন্ডার করার ক্ষেত্রে বাধা সৃষ্টি করা সমস্যার সমাধান করা হয়েছে।
- DNS সংক্রান্ত সমস্যার সমাধান করা হয়েছে যার কারণে এমুলেটর নেটওয়ার্কের সাথে কানেক্ট করতে পারছিল না।
- ভার্চুয়াল ডিভাইস কনফিগারেশন ডায়ালগের মাধ্যমে AVD-তে বরাদ্দ করা ইন্টার্নাল স্টোরেজে পরিবর্তন করার সময় যে সমস্যা হচ্ছিল তা সমাধান করা হয়েছে।
- অনেক adb প্রসেস তৈরি হওয়া এবং সঠিকভাবে বন্ধ না হওয়ার সমস্যার সমাধান করা হয়েছে।
- এক্সটেন্ডেড কন্ট্রোল উইন্ডো খোলা না থাকলে, স্ক্রিন ঘোরানোর বোতাম এবং UI-এর অন্যান্য অংশ কাজ না করার সমস্যার সমাধান করা হয়েছে।
- হোস্ট থেকে কপি ও পেস্ট করার সময় হওয়া সমস্যার সমাধান করা হয়েছে। এক্সটেন্ডেড কন্ট্রোল ডায়ালগ অন্তত একবার না খুললে এই সমস্যা হচ্ছিল।
- ফ্রেমলেস এমুলেটরের রিসাইজ রেকট্যাঙ্গেল আপডেট করা হয়েছে যাতে এমুলেটরের ভিজ্যুয়াল থিম আরও ভালোভাবে ফলো করা যায়।
- বিমান মোড চালু থাকলে টেলিফোন এবং এসএমএস এখন সঠিকভাবে বন্ধ করা হয়।
- একটি সমস্যার সমাধান করা হয়েছে যার কারণে স্ন্যাপশট লোড করার পরে এসএমএস এবং সেলুলার কার্যকারিতা বন্ধ হয়ে যাচ্ছিল।
- আপনি আর এই ধরনের মিথ্যা সতর্কতামূলক মেসেজ পাবেন না
“Unable to open... \pstore.bin. Permission denied.” - কিছু Mac স্ক্রিনে AVD-র পজিশন পরিবর্তন করার সময় যে সমস্যা হচ্ছিল তা সমাধান করা হয়েছে।
- Pixel 2 XL স্কিন সহ AVD চালানোর সময় নতুন MacBook Pro কম্পিউটারে স্ক্রিন ফ্লিকার করা ও ফাঁকা স্ক্রিন দেখানোর সমস্যার সমাধান করা হয়েছে।
- ফ্রেমলেস এমুলেটর অ্যাক্টিভ থাকার সময় জুম করা মোডে পাল্টানোর সময় ফাঁকা স্ক্রিন সংক্রান্ত সমস্যার সমাধান করা হয়েছে।
- জুম-ইন করার সময় ডিভাইসের স্কিন ও এমুলেটর কন্টেন্ট সিঙ্ক না হয়ে স্ক্রল আউট হয়ে যাওয়ার সমস্যার সমাধান করা হয়েছে।
আপনি যদি এখনও হ্যাং বা অন্যান্য অস্থিরতার সম্মুখীন হন, তাহলে একটি সমস্যা ফাইল করুন।
২৭.১.১২ (মার্চ ২০১৮)
এই আপডেটে নিম্নলিখিত সমস্যার সমাধান অন্তর্ভুক্ত রয়েছে:
- এমুলেটর চালু করার পরে ব্লুটুথ অডিও কোয়ালিটি খারাপ হয়ে গেছে। (সমস্যা 37095756)
- একটি এমুলেটরে পাঠানো লোকেশন সবকটিতে পাঠানো হয়েছে। (সমস্যা 73450633)
- কনসোল ব্যবহার করে সেট করা জিপিএস লোকেশন, গ্রাফিকাল ইউজার ইন্টারফেসে এক্সটেন্ডেড কন্ট্রোল > লোকেশন ব্যবহার করে সেট করা ভ্যালু দ্বারা ওভাররাইড করা হয়েছে। (সমস্যা 73471760)
আপনি যদি এখনও হ্যাং বা অন্যান্য অস্থিরতার সম্মুখীন হন, তাহলে একটি সমস্যা ফাইল করুন।
এই আপডেট, বর্তমান সিস্টেম ইমেজ এবং Android Studio-এর প্রিভিউ ভার্সনের মাধ্যমে, আপনি Android Emulator ব্যবহার করে ARCore-এর মাধ্যমে তৈরি করা অগমেন্টেড রিয়েলিটি অ্যাপ্লিকেশন চালাতে পারবেন। বিস্তারিত প্রয়োজনীয়তা ও নির্দেশাবলীর জন্য, Android Emulator-এ AR অ্যাপ রান করুন দেখুন।
২৭.১.১০ (ফেব্রুয়ারি ২০১৮)
ক্যামেরা ক্যাপচার রেজোলিউশন
এখন অ্যাটাচ করা ওয়েবক্যাম থেকে 720p ফ্রেম ক্যাপচার করা যাবে।
Android 8.1 (API লেভেল ২৭) এবং তার চেয়ে উন্নত সিস্টেম ইমেজের সাথে কাজ করার জন্য, অ্যাটাচ করা যেকোনও ওয়েবক্যামের ৭২০p ফ্রেম ক্যাপচার করার ক্ষমতা থাকতে হবে।
সমাধান করা
- ওয়েবক্যাম ক্যাপচার করার সময় কখনও কখনও বিকৃত বা সম্পূর্ণ সবুজ ছবি আউটপুট হিসেবে দেখানোর সমস্যার সমাধান করা হয়েছে।
- এমন একটি সমস্যার সমাধান করা হয়েছে যার ফলে কোনও হ্যাং না থাকলেও নিম্নলিখিত মেসেজটি দেখা যেত: "এমুলেটর: সমস্যা: হ্যাং হয়ে যাওয়া থ্রেড 'Qt ইভেন্ট লুপ' শনাক্ত করা হয়েছে। ১৫০০০ মিলিসেকেন্ডের মধ্যে কোনও উত্তর পাওয়া যায়নি"।
আপনি যদি এখনও হ্যাং বা অন্যান্য অস্থিরতার সম্মুখীন হন, তাহলে একটি সমস্যা ফাইল করুন।
২৭.১.৭ (ফেব্রুয়ারি ২০১৮)
ফ্রেমলেস এমুলেটর উইন্ডো:
ডিফল্ট হিসেবে, ডিভাইস স্কিন ফাইল সহ এমুলেটর এখন চারপাশের উইন্ডো ফ্রেম ছাড়াই দেখানো হয়। আশেপাশের উইন্ডো ফ্রেম দেখাতে, এক্সটেন্ডেড কন্ট্রোল উইন্ডোর সেটিংস প্যানে ডিভাইসের চারপাশে উইন্ডো ফ্রেম দেখুন বিকল্প চালু করুন।
AVD স্ন্যাপশট নিয়ে কাজ করার সময় আরও দক্ষ করে তুলতে কুইক বুট সংক্রান্ত উন্নতি:
- আপনি যেকোনও সময় এক্সটেন্ডেড কন্ট্রোল ডায়ালগ বক্সের সেটিংস প্যানে এখনই সেভ করুন বোতাম ব্যবহার করে AVD স্ন্যাপশট সেভ করতে পারবেন।
- এমুলেটর অনেক ক্ষেত্রে স্ন্যাপশট সেভ করার সময় কমিয়ে দেয়, কারণ এটি শুধুমাত্র বর্তমান অবস্থা এবং আগে সেভ করা স্ন্যাপশটের মধ্যে পার্থক্য সেভ করে।
বিস্তারিত জানতে, কুইক বুট ডকুমেন্টেশন দেখুন।
QEMU 2.9 ব্যবহার করার জন্য এমুলেটর আপডেট করা হয়েছে।
কিছু উল্লেখযোগ্য উন্নতির মধ্যে নিম্নলিখিতগুলি অন্তর্ভুক্ত:
- আরও ভালো পারফর্ম্যান্সের জন্য অপ্টিমাইজ করা I/O এবং আরও সূক্ষ্ম-গ্রেনড I/O থ্রেড লকিং।
- QEMU 2.8 (26.1.4) থেকে শুরু করে বাগ ঠিক করা হয়েছে।
- HAXM ব্যাক এন্ডের নতুন প্রয়োগ।
QEMU 2.9 পরিবর্তন লগ-এ পরিবর্তনের সম্পূর্ণ তালিকা দেখুন।
OpenGL ES 3.0-এর সাথে মানানসই Swiftshader ইমপ্লিমেন্টেশন:
ইমুলেটরের Swiftshader রেন্ডারার এখন OpenGL ES 3.0-এর সাথে পুরোপুরি মানানসই। Swiftshader রেন্ডারার সম্পর্কে বিস্তারিত জানতে, এক্সটেন্ডেড কন্ট্রোল-এর সেটিংস > উন্নত বিভাগ দেখুন।
সমাধান করা
- ক্লিপবোর্ড শেয়ারিং চালু করুন বিকল্পটি টগল করে বন্ধ ও চালু না করলে ক্লিপবোর্ড শেয়ারিং কাজ না করার সমস্যা সমাধান করা হয়েছে।
- কম রেজোলিউশনের AVD-এর সাথে Swiftshader রেন্ডারিং ব্যাক এন্ড ব্যবহার করার সময় হ্যাং হওয়ার সমস্যা সমাধান করা হয়েছে।
২৭.০.৫ (জানুয়ারি ২০১৮)
Windows-এ রেন্ডার করার জন্য ANGLE এখন ডিফল্ট হিসেবে বন্ধ করা আছে।
ANGLE আপনার জন্য আরও ভাল কাজ করলে, আপনি কমান্ড লাইন ফ্ল্যাগ
-gpu angle_indirect-এর মাধ্যমে এটি আবার চালু করতে পারবেন। অথবা, এক্সটেন্ডেড কন্ট্রোল উইন্ডো খুলে, সেটিংস > উন্নত বিকল্পে নেভিগেট করুন এবং OpenGL ES রেন্ডারার সেটিংসের জন্য ANGLE D3D11 বেছে নিন।Shift+B প্রেস করলে বড় হাতের B টাইপ না হওয়ার সমস্যার সমাধান করা হয়েছে।
২৭.০.২ (ডিসেম্বর ২০১৭)
নতুন কুইক বুট ফিচার, আপনার AVD ইনস্ট্যান্সের স্ন্যাপশটের উপর ভিত্তি করে, আরও দ্রুত এমুলেটর শুরুর সময় প্রদান করে।
সব AVD-এর জন্য ডিফল্ট হিসেবে কুইক বুট চালু করা থাকে। যদিও প্রথমবার আপনি AVD চালু করলে এটি অবশ্যই কোল্ড বুট (যেমন ডিভাইস চালু করা) করবে, পরবর্তী সব স্টার্ট দ্রুত হয় এবং সিস্টেমটি সেই অবস্থায় রিস্টোর করা হয় যেখানে আপনি এমুলেটর বন্ধ করেছিলেন (ডিভাইস জাগানোর মতো)।
এমুলেটর কখন স্ন্যাপশট সেভ করবে তা নিয়ন্ত্রণ করতে চাইলে, এমুলেটরের এক্সটেন্ডেড কন্ট্রোল উইন্ডো খুলে সেটিংস বিকল্পে ক্লিক করুন। এখানে, আপনি বেরিয়ে আসার সময় কুইক বুট স্টেট সেভ করুন বিকল্পের জন্য নিম্নলিখিত সেটিংসের মধ্যে থেকে একটি বেছে নিতে পারবেন:
- হ্যাঁ: এমুলেটর বন্ধ করার সময় সবসময় কুইক বুট স্ন্যাপশট সেভ করুন। এটি ডিফল্ট বিকল্প।
- না: কুইক বুট স্ন্যাপশট কখনও সেভ করবেন না; সবসময় কোল্ড বুট করুন।
- জিজ্ঞাসা করুন: এমুলেটর বন্ধ করার সময় কুইক বুট স্ন্যাপশট সেভ করা হবে কিনা তা প্রম্পট করুন।
আপনার বেছে নেওয়া বিকল্প শুধু বর্তমানে খোলা AVD-এর ক্ষেত্রেই প্রযোজ্য।
আরও তথ্যের জন্য, কুইক বুট ডকুমেন্টেশন দেখুন।
Mac OpenGL ES 3-এর জন্য সহায়তা যোগ করা হয়েছে (API লেভেল ২৪ এবং তার থেকে বেশি, Google API এবং x86 ABI ব্যবহার করে সিস্টেম ইমেজের জন্য)।
OpenGL ES 2+ অ্যাপে আরও স্টেবিলিটির জন্য, এমুলেটর এখন OpenGL কোর প্রোফাইল ব্যবহার করে যদি উপলভ্য থাকে।
Swiftshader / ANGLE-এর মাধ্যমে রেন্ডার করার নতুন বিকল্প:
-gpu swiftshader_indirect: Swiftshader-এর আরও দ্রুত, আরও স্থিতিশীল ভেরিয়েন্ট যা কুইক বুটের সাথে কাজ করে।-gpu angle_indirect(শুধুমাত্র Windows): ANGLE D3D-এর আরও স্টেবল ভ্যারিয়েন্ট যা কুইক বুটের সাথেও কাজ করে।
পুরনো
-gpu swiftshaderএবং-gpu angleবিকল্প এখন বন্ধ করে দেওয়া হয়েছে। এক্সটেন্ডেড কন্ট্রোল উইন্ডোতে, সেটিংস > উন্নত বিকল্পে OpenGL ES রেন্ডারার সেটিংসের জন্য"SwiftShader " এবং"ANGLE " বিকল্প এখন*_indirectভেরিয়েন্ট ব্যবহার করে।অন্যান্য বিভিন্ন সমস্যার সমাধান।
২৬.১.৪ (আগস্ট ২০১৭)
এটি একটি ছোট রিলিজ যাতে ত্রুটি সমাধান এবং GPU কনফিগারেশনে নিম্নলিখিত উন্নতি অন্তর্ভুক্ত রয়েছে:
- ANGLE রেন্ডারারে চালানোর সময় বুট অ্যানিমেশন চালু করুন
- ANGLE রেন্ডারারে চালানোর সময় GLES3 বন্ধ করুন
২৬.১.৩ (আগস্ট ২০১৭)
এটি একটি ছোট রিলিজ যাতে সমস্যার সমাধান, পারফর্ম্যান্সের উন্নতি এবং ছোটখাটো ফিচার পরিবর্তন করা হয়েছে।
- লেটেস্ট Android 8.0 সিস্টেম ইমেজ ব্যবহার করার জন্য এখন এই ভার্সন প্রয়োজন।
এগুলি Treble-এর সাথে মানানসই,
এতে আলাদা
vendor.imgপার্টিশন আছে। - নতুন HAXM 6.2.0 এখন উপলভ্য (SDK ম্যানেজার চেক করুন) এবং এতে নিম্নলিখিত আপডেট
অন্তর্ভুক্ত আছে:
- মেমরির ব্যবহার উন্নত করা হয়েছে। HAXM-এর মাধ্যমে পিন করা মেমরির পিক ওয়ার্কিং সেট AVD-এর RAM-এর সাইজের সমান আর নেই; পরিবর্তে, চাহিদা অনুযায়ী মেমরি পেজ করা হয়। এটি কম RAM থাকা মেশিনে এমুলেটরকে আরও নির্ভরযোগ্যভাবে চালাতে সাহায্য করবে।
- HAXM 6.2.0 সহ এমুলেটর এখন macOS-এ দ্রুত বুট করতে পারে, দীর্ঘ ইনিশিয়ালাইজেশন ফেজ এড়িয়ে যায়।
- GPU কনফিগারেশনে উন্নতি
- গেস্ট-সাইড সফ্টওয়্যার রেন্ডারিং করার সময় বুট করার সময় কালো স্ক্রিন সংক্রান্ত সমস্যা সমাধান করা হয়েছে। Swiftshader-এর সাথে হোস্ট-সাইড সফ্টওয়্যার রেন্ডারিংয়ে ফিরে গিয়ে এটি করা হয়েছে। Google API সহ API লেভেল ১৯ - ২৫-এর জন্য সিস্টেম ইমেজের লেটেস্ট রিভিশনে গেস্ট-সাইড রেন্ডারিং কাজ করা উচিত।
- পুরনো Intel GPU-এর উপস্থিতি শনাক্ত করার কারণে এমুলেটরটি একটি সফ্টওয়্যার রেন্ডারারে
সুইচ করা হয়েছিল, কিন্তু এমুলেটরটি আসলে একটি ডিসক্রিট GPU-তে
চলছিল। এই সমস্যার সমাধান করা হয়েছে। কোন GPU-কে ANGLE বা Swiftshader রেন্ডারিং ব্যবহার করার জন্য
সুইচ করা হবে তা নিম্নলিখিতভাবে নির্ধারণ করা হয়:
- পুরনো Intel iGPU-এর OpenGL ও ANGLE D3D ড্রাইভার, উভয় ক্ষেত্রেই ড্রাইভার সংক্রান্ত সমস্যা আছে। Intel HD Graphics 3xxx এবং তার আগের ভার্সন ব্যবহারকারীরা Swiftshader ব্যবহার করবেন।
- কিছু ব্যবহারকারী জানিয়েছেন যে তারা API লেভেল ২৫-এর ছবি ব্যবহার করতে পারছেন না, কারণ "Pixel Launcher বন্ধ হয়ে যাচ্ছে" সংক্রান্ত একটি সমস্যা দেখা দিচ্ছে। কিছু Intel HD 4xxx মডেলে এটি ড্রাইভার সংক্রান্ত সমস্যা বলে মনে হচ্ছে। তাই, সেগুলি অটোমেটিক ANGLE ব্যবহার করার জন্য সুইচ করা হবে।
- GPU এমুলেশনের মাধ্যমে সেরা ফলাফল পেতে, আমরা ডিসক্রিট NVIDIA বা AMD GPU অথবা নতুন Intel GPU (Iris, HD 5xxx, HD 5xx/6xx) ব্যবহার করার সাজেশন দিই।
- AVD
hw.gpu.mode=host-এর সাথে কনফিগার করা থাকলে এবং ইমুলেটর রিমোট ডেস্কটপ ক্লায়েন্টে লঞ্চ করা হলে, ইমুলেটর চালু না হওয়ার (OpenGL ইমুলেশন ইনিশিয়ালাইজ করা যায়নি) সমস্যা সমাধান করা হয়েছে। - "OpenGL ES API লেভেল (রিস্টার্ট করতে হবে)" সেটিংস স্পষ্ট করা হয়েছে; সমস্যা হলে বা নিম্নতর OpenGL ES API লেভেলে পরীক্ষা করার প্রয়োজন হলে OpenGL ES 3 থেকে OpenGL ES 2-তে ডাউনগ্রেড করার বিকল্প যোগ করা হয়েছে।
- Mesa রেন্ডারার বন্ধ করা হয়েছে;
hw.gpu.mode=mesaএখন থেকে হোস্টে Swiftshader ব্যবহার করার জন্য অটোমেটিক পাল্টে যাবে।
- macOS-এর জন্য উন্নতি:
- ইমুলেটর এখন Hypervisor.Framework বা HAXM 6.2.0-এর মাধ্যমে macOS 10.13 High Sierra-এর সাথে পুরোপুরি মানানসই।
- পারফর্ম্যান্স ও macOS-এর সাথে মানানসই হওয়ার বিষয়টি উন্নত করতে, ৩২-বিট x86 ইমেজের জন্য
Hypervisor.framework এখন macOS-এ ডিফল্ট হিসেবে চালু করা হয়েছে। আপনি যদি
এটি নিয়ে নির্দিষ্ট কোনও সমস্যার সম্মুখীন হন, তাহলে একটি ত্রুটির প্রতিবেদন ফাইল করুন এবং
HVF = offথেকে~/.android/advancedFeatures.ini-এ যোগ করুন (এই ফাইলটি না থাকলে তৈরি করুন)। - Hypervisor.framework ব্যবহার করার সময় ইন্টারনেট না থাকা / ডিবাগার অ্যাটাচ করতে না পারা সংক্রান্ত সমস্যার সমাধান করা হয়েছে।
- ওয়েবক্যাম ক্যাপচারের মানানসই ও পারফর্ম্যান্স উন্নত করতে, QTKit-ভিত্তিক ক্যামেরা ক্যাপচারকে AVFoundation-ভিত্তিক বাফার্ড ক্যামেরা ক্যাপচার দিয়ে পরিবর্তন করা হয়েছে।
- কিছু সিস্টেম ইমেজে ওয়াই-ফাইয়ের জন্য সহায়তা যোগ করা হয়েছে (বর্তমানে শুধুমাত্র API লেভেল ২৫)।
"AndroidWifi" নামের একটি অ্যাক্সেস পয়েন্ট উপলভ্য আছে এবং Android অটোমেটিক
এটির সাথে কানেক্ট করে। কমান্ড লাইন প্যারামিটার
-feature -Wifi-এর সাথে এমুলেটর রান করে ওয়াই-ফাই সাপোর্ট বন্ধ করা যেতে পারে। - কিছু ব্যবহারকারী উদ্বেগ প্রকাশ করেছেন যে নির্দিষ্ট সাইজের Play Store সিস্টেম ইমেজে পর্যাপ্ত স্টোরেজ নেই। সেই কারণে, আমরা ডিফল্ট সাইজ বাড়িয়ে ২ জিবি করেছি (৮০০ এমবি থেকে)।
- সরাসরি সেটিংস পৃষ্ঠা থেকে ত্রুটির প্রতিবেদন UI পৃষ্ঠা খুলতে একটি কীবোর্ড শর্টকাট (Ctrl+Shift+U) যোগ করা হয়েছে।
- Intel x86 EPT সহ কিন্তু UG ছাড়া পুরনো CPU ব্যবহার করা হলে, একাধিক কোর কনফিগার করা থাকলে এমুলেটর বুট করতে ব্যর্থ হওয়ার সমস্যা সমাধান করা হয়েছে।
- ইমুলেটর নিজেই Xen হাইপারভাইজরে চললে, HyperV ভুলভাবে শনাক্ত হওয়ার সমস্যা সমাধান করা হয়েছে।
- কিছু Linux কনফিগারেশনে এমুলেটর চালু করার সময় ক্র্যাশ হওয়ার সমস্যা সমাধান করা হয়েছে।
২৬.১.২ (জুলাই ২০১৭)
এই রিলিজে নতুন ফিচার ও পারফর্ম্যান্স সংক্রান্ত উন্নতি অন্তর্ভুক্ত আছে।
এক্সটেন্ডেড কন্ট্রোলে (আরও
,
এবং তারপর সেটিংস ও
প্রক্সি বিকল্পে ক্লিক করুন) কাস্টম HTTP প্রক্সি কনফিগারেশন নির্ধারণ করার সুবিধা যোগ করা হয়েছে। ডিফল্ট হিসেবে, এমুলেটর Android Studio HTTP প্রক্সি সেটিংস ব্যবহার করে, তবে এই স্ক্রিন আপনাকে ম্যানুয়াল প্রক্সি কনফিগারেশন নির্ধারণ করার অনুমতি দেয়।
গেস্ট মোড GPU-এর জন্য VNC সাপোর্ট যোগ করা হয়েছে যাতে এমুলেটর দূরবর্তী স্থান থেকে দেখা ও কন্ট্রোল করা যায়। যেমন, আপনি এমুলেটর চালু করতে পারেন এবং VNC-কে পোর্ট ৫৯০১-এ শুনতে দিতে পারেন:
- এক্সিকিউট করুন:
emulator -gpu guest -avd avd_name -no-window -qemu -vnc :1 পোর্ট 5901-এ কানেক্ট করতে, tightvnc ভিউয়ারের মতো কোনও VNC ভিউয়ার খুলুন।
Mac-এর বিল্ট-ইন স্ক্রিন শেয়ারিং ক্লায়েন্ট ব্যবহার করতে, এমুলেটর লঞ্চ করার সময় VNC পাসওয়ার্ড প্রয়োজন। পাসওয়ার্ড সেট করতে, এই কমান্ড ব্যবহার করুন:
emulator -gpu guest -avd avd_name -no-window -qemu -vnc :1,password -monitor stdioতারপর কনসোলে
change vnc passwordলিখুন এবং পাসওয়ার্ড লিখুন।
VNC মোডের জন্য Android O বর্তমানে কাজ করে না।
- এক্সিকিউট করুন:
এক্সটেন্ডেড কন্ট্রোল সহায়তা স্ক্রিনে বাগ ফাইল করুন বোতাম যোগ করা হয়েছে (আরও
বিকল্পে ক্লিক করুন,
এবং তারপর সহায়তা এবং এমুলেটর সহায়তা বিকল্পে ক্লিক করুন)। বাগ ফাইল করুন বিকল্পে ক্লিক করলে
একটি ডায়ালগ বক্স খুলে যায় যেখানে আপনি বাগ রিপোর্টের বিবরণ দেখতে পাবেন, যেমন
স্ক্রিনশট, AVD কনফিগারেশন সংক্রান্ত তথ্য
এবং বাগ রিপোর্টের লগ। তারপর আপনি নিজের জন্য রিপোর্ট সেভ করতে পারবেন অথবা
এমুলেটর সংক্রান্ত সমস্যার ব্যাপারে অভিযোগ জানাতে পারবেন।এমুলেটর ও ভার্চুয়াল সেন্সর প্যানেলে জাইরোস্কোপ সেন্সর যোগ করা হয়েছে। এর জন্য জাইরোস্কোপ সাপোর্ট সহ সিস্টেম ইমেজ প্রয়োজন (বর্তমানে API লেভেল ২৪ এবং ২৫)।
হোস্টে একাধিক ভার্চুয়াল নেটওয়ার্ক ইন্টারফেস একাধিক DNS অ্যাড্রেস নিয়ে এলে, যা এমুলেটরের জন্য কার্যকরী নয়, তখন Windows-এ Qemu DNS তালিকায় হোস্ট-প্রেফার্ড DNS যোগ করা হয়েছে।
সার্ভার ফ্ল্যাগের মাধ্যমে macOS 10.10+ ভার্সনে 32-বিট x86 ইমেজের জন্য পরীক্ষামূলক macOS Hypervisor.Framework সাপোর্ট যোগ করা হয়েছে, যা বুট টাইম ও পারফর্ম্যান্স উন্নত করবে।
- এটি নিয়ে কোনও সমস্যা হলে,
~/.android/advancedFeatures.ini-এHVF = offলাইনটি যোগ করুন।
- এটি নিয়ে কোনও সমস্যা হলে,
OpenGL ES 3.x এখন ডিফল্ট হিসেবে সিস্টেম ইমেজ ও হোস্ট GPU-এর জন্য চালু করা হয়েছে যা OpenGL ES 3-কে সাপোর্ট করে। বর্তমানে, শুধুমাত্র Android O (API লেভেল ২৬) এবং Windows/Linux হোস্টে OpenGL ES ৩ কাজ করে।
- OpenGL ES 3-এর সাথে সমস্যা হলে,
~/.android/advancedFeatures.ini-এGLESDynamicVersion = offলাইনটি যোগ করুন।
- OpenGL ES 3-এর সাথে সমস্যা হলে,
এমুলেটর এখন চূড়ান্ত ডিসপ্লে ইমেজ পোস্টিং ছাড়া সমস্ত রেন্ডারিংয়ের জন্য অফস্ক্রিন OpenGL FBO ব্যবহার করে, যা প্ল্যাটফর্ম জুড়ে রঙের সামঞ্জস্যের সমস্যাগুলিতে সাহায্য করবে।
এমুলেটরের গতি হঠাৎ কমে যাওয়ার সমস্যা সম্পর্কে ডেটা সংগ্রহ করার পরে আমরা নির্ধারণ করেছি যে পুরনো Intel OpenGL ড্রাইভার ও Windows আপডেটের মধ্যে কোনও ইন্টার্যাকশনের কারণে এই সমস্যা হতে পারে। তাই, Intel HD 4000, 3000, 2000 (এবং সংশ্লিষ্ট GPU) ব্যবহারকারীদের জন্য এখন ডিফল্ট হিসেবে রেন্ডারিং সেট করা আছে, হয় D3D রেন্ডারার (ANGLE) অথবা Swiftshader (সফ্টওয়্যার রেন্ডারার)।
২৬.০.০ (মার্চ ২০১৭)
এই রিলিজ API লেভেল ২৬-এর সাথে মানানসই। এছাড়াও, এতে পারফর্ম্যান্স সংক্রান্ত উন্নতি ও সমস্যার সমাধান অন্তর্ভুক্ত আছে।
ছোটখাট সংশোধন ২৬.০.৩ (মে ২০১৭)
- সমস্যাযুক্ত হার্ডওয়্যার কনফিগারেশন থেকে উদ্ভূত সমস্যা দ্রুত সমাধান করার জন্য অনলাইন-আপডেটযোগ্য ফিচার ফ্ল্যাগ যোগ করে। এর ফলে Google, সার্ভার-সাইড ফ্ল্যাগ আপডেট করার মাধ্যমে ব্যবহারকারীর কনফিগারেশনের উপর নির্ভর করে এমন সমাধান ও ফিচার রিলিজ করতে পারে। নির্দিষ্ট কোনও হার্ডওয়্যারে সমস্যা লক্ষ্য করলে, সমস্যার বিষয়ে অভিযোগ জানান যাতে আমরা সমস্যাটি তদন্ত করে দেখতে পারি।
- Android Wear API লেভেল ২৫ সিস্টেম ইমেজের জন্য রোটারি ইনপুট-এর জন্য নতুন সহায়তা। Wear ডিভাইসে রোটারি ইনপুট ডায়াল এমুলেট করতে, এক্সটেন্ডেড উইন্ডোতে রোটারি ইনপুট ট্যাবে ক্লিক করুন।
- ক্র্যাশ রিপোর্টিং ডায়ালগের সাইজ এখন পরিবর্তন করা যায় এবং ইনপুট ছাড়াই কখন ক্র্যাশ রিপোর্ট পাঠাতে হবে বিকল্পটি জিজ্ঞাসা করুন-এ আর রিসেট হয় না।
- ৩২-বিট এমুলেটরের জন্য এখন সর্বাধিক AVD RAM সাইজ ৫১২ এমবি বা তার কম হতে হবে, যাতে ২ জিবি ভার্চুয়াল অ্যাড্রেস স্পেসে এমুলেটরের জায়গা শেষ না হয়ে যায়।
- এমুলেটর ইমেজে অ্যাবসোলিউট পাথের জন্য সহায়তা যোগ করে।
- Google Play Store-এর ছবির জন্য এক্সটেন্ডেড উইন্ডোতে একটি নতুন ট্যাব যোগ করে যা Play Services-এর ভার্সন এবং Play Services-এর আপডেট চেক করার জন্য একটি বোতাম দেখায়।
- এমুলেটর সেটিংস পৃষ্ঠায় OpenGL রেন্ডারার বেছে নেওয়ার জন্য একটি ড্রপডাউন যোগ করে। Windows মেশিনে OpenGL ড্রাইভার নিয়ে সমস্যা হলে, ANGLE (D3D11) বা ANGLE (D3D9) বিকল্প ব্যবহার করে দেখুন (রিস্টার্ট করতে হবে)। আপনি যদি Windows নয় এমন মেশিনে OpenGL ড্রাইভারের সাথে সমস্যা অনুভব করেন, তাহলে Swiftshader সফ্টওয়্যার রেন্ডারার ব্যবহার করে দেখুন (রিস্টার্ট করতে হবে)।
- এমুলেটর
exitএবংminimizeকমান্ড পেলে, বিরল ক্ষেত্রে এক্সিট করার সময় ক্র্যাশ হওয়ার সমস্যা সমাধান করে। - Mac মেশিনে ডিসপ্লে পরিবর্তন করার সময় স্কেলিং সংক্রান্ত সমস্যার সমাধান করে। (সমস্যা ২৬৮২৯৬)
- হোস্ট কম্পিউটার স্লিপ মোড থেকে চালু করার পরে বা এমুলেটর অনেকক্ষণ ধরে চলার পরে এমুলেটর CPU-এর ৩০০% ব্যবহার করে এবং তা ধরে রাখে, এই সমস্যার সমাধান করে।
- এমুলেটর বন্ধ হয়ে যাওয়ার সময় ক্র্যাশ হওয়ার সমস্যা সমাধান করে।
HAXM v6.1.1 (মার্চ ২০১৭) সহ আপডেট
মনে রাখবেন: ৩০ মার্চ থেকে Mac ব্যবহারকারীদের জন্য SDK Manager-এর মাধ্যমে HAXM v6.1.1 উপলভ্য এবং Windows ব্যবহারকারীদের জন্য শীঘ্রই উপলভ্য হবে।
Android Emulator-এর 26.0.0 ভার্সন HAXM v6.1.1-এ কাজ করে, যার মধ্যে নিম্নলিখিত আপডেট অন্তর্ভুক্ত:
- পারফর্ম্যান্স মনিটরিং ইউনিট (PMU) ইমুলেশন চালু করে। (সমস্যা 223377)
- Mac-এ VirtualBox ও Docker-এর সাথে সহাবস্থান সংক্রান্ত সমস্যার সমাধান করে। (সমস্যা 197915)
- ইনস্টলার Windows-এ Intel VT-x শনাক্ত করতে না পারলে, ইনস্টলেশন সংক্রান্ত সমস্যার মেসেজ সংশোধন করে, সাধারণত Hyper-V চালু থাকার কারণে এটি হয়।
- Hyper-V-ভিত্তিক Windows VM-এ Android Emulator-এর গতি বাড়ানোর জন্য সহায়তা যোগ করে। এই আপডেট করার জন্য হোস্ট Hyper-V ইনস্ট্যান্সকে (যেটি Windows VM/গেস্ট ম্যানেজ করে) নেস্টেড ভার্চুয়ালাইজেশন চালু থাকা অবস্থায় Hyper-V-এর লেটেস্ট ভার্সন ব্যবহার করতে হবে। গেস্ট Hyper-V ইনস্ট্যান্সে (Windows VM) Hyper-V বন্ধ থাকতে হবে।
ডিপেন্ডেন্সি
- Android SDK প্ল্যাটফর্ম-টুলস রিভিশন 25.0.4 বা তার পরবর্তী যেকোনও ভার্সন।
- Android SDK টুল রিভিশন 26.0.0 বা তার পরবর্তী ভার্সন।
নতুন ফিচার ও সমস্যার সমাধান
- API লেভেল ২৬-এর সাথে মানানসই।
- সম্পূর্ণ GLES 2.0 কমপ্লায়েন্ট। হোস্ট GPU-তে কনফর্ম্যান্ট ডেস্কটপ OpenGL ড্রাইভার থাকলে, এমুলেটর এখন Android CTS dEQP-GLES2-এর ১০০%
mustpassতালিকা পাস করে। এটি API লেভেল ২৪ x৮৬ ছবির (রিভিশন ১১ ও তার পরবর্তী) জন্য রিলিজ করা হয়েছে এবং শীঘ্রই সব সিস্টেম ছবির জন্য অন্তর্ভুক্ত করা হবে। - ভিডিও প্লেব্যাক পারফর্ম্যান্স উন্নত করা হয়েছে। এমুলেটর এখন হোস্ট/গেস্ট শেয়ার করা মেমরিতে সব ভিডিও কালার বাফার স্টোর করে এবং GPU-তে প্রয়োজনীয় ফাইনাল YUV থেকে RGB কনভার্সন করে। 1080p30 এখন বেশিরভাগ সিস্টেমের নাগালে থাকা উচিত। এটি API লেভেল ২৪ x৮৬ ছবির জন্য রিলিজ করা হয়েছে (রিভিশন ১১ ও তার পরবর্তী ভার্সন) এবং শীঘ্রই সব সিস্টেম ছবির জন্য অন্তর্ভুক্ত করা হবে।
- এমুলেটর এখন বন্ধ হওয়ার সময়
adb devicesতালিকা থেকে নিজেকে সঠিকভাবে অনিবন্ধিত করে এবং Linux মেশিনে খোলা TCP পোর্ট বন্ধ করে। - adb কানেকশন এখন আরও নির্ভরযোগ্য। চালু থাকা এমুলেটর আরও দ্রুত শনাক্ত করা হয় এবং এটি আর "অফলাইন" বা "অননুমোদিত" স্ট্যাটাসে যায় না।
25.3.0 (মার্চ ২০১৭)
এই রিলিজ থেকে, Android Emulator, SDK টুল থেকে আলাদাভাবে রিলিজ করা হবে। এই রিলিজে বিভিন্ন ধরনের পারফর্ম্যান্স উন্নতি, নতুন ফিচার ও সমস্যার সমাধান অন্তর্ভুক্ত আছে।
ছোটখাটো সংশোধন ২৫.৩.১ (মার্চ ২০১৭)
- ডিফল্ট হিসেবে GLAsyncSwap বন্ধ করে কিছু GPU কনফিগারেশনে ক্র্যাশ হওয়ার সমস্যা সমাধান করা হয়েছে।
গেম ও ভিডিওর জন্য ফ্রেম টাইমিং ও ফ্রেম প্রতি সেকেন্ড উন্নত করতে এই ফিচারটি ২৫.৩.০ ভার্সনে যোগ করা হয়েছে, তবে কিছু অজানা মেশিন কনফিগারেশনে এমুলেটর কাজ করতে পারছে না। আপনি
android_sdk/emulator/lib/advancedFeatures.iniফাইল খুলে এবংGLAsyncSwap = onসেট করে ম্যানুয়ালি এটি চালু করতে পারবেন।
ডিপেন্ডেন্সি
- Android SDK প্ল্যাটফর্ম-টুলস রিভিশন ২৪ বা তার পরের ভার্সন।
- Android SDK টুলস রিভিশন ২৫.৩.০।
নতুন ফিচার ও সমস্যার সমাধান
- QEMU 2.7-এ এমুলেশন ইঞ্জিন আপডেট করা হয়েছে, যার মধ্যে সাম্প্রতিক সব সমস্যার সমাধান, উন্নত পারফর্ম্যান্স ও নতুন ফিচার অন্তর্ভুক্ত।
- নতুন IPv6 সাপোর্ট।
- এমুলেটর এখন হোস্টে একটি বিশুদ্ধ সফ্টওয়্যার রেন্ডারার হিসাবে SwiftShader ব্যবহার করে।
- Android Pipe-এর পারফর্ম্যান্সের উন্নতি: Android Pipe, এমুলেটর এবং Android OS-এর মধ্যে প্রধান
কমিউনিকেশন চ্যানেল, এখন অনেক দ্রুত, কম লেটেন্সি এবং আরও ভালো
মাল্টি-থ্রেডেড পারফর্ম্যান্স অফার করে। এর ফলে এমুলেটরের পারফর্ম্যান্স
উন্নত হয়, যার মধ্যে রয়েছে:
- ADB পুশ/পুল স্পিড উন্নত করা হয়েছে।
- আরও ভালো 3D অ্যাক্সিলারেশন সহায়তা।
- এমুলেটরের সামগ্রিক রেসপন্সিভনেস উন্নত করা হয়েছে।
- উন্নত গ্রাফিক্স পারফর্ম্যান্স।
- এমুলেটর এখন GPU-সাইড বাফার (glBindBuffers / glBufferData) ব্যবহার করে যখন গেস্ট সেগুলির জন্য অনুরোধ করে, কিছু অ্যাপে CPU ওভারহেড কমায়।
- উন্নত অডিও সাপোর্ট।
- আরও দ্রুত ডিস্ক I/O: এমুলেটর এখন ডিস্ক I/O ডিসপ্যাচ করার জন্য আলাদা থ্রেড ব্যবহার করে, যার ফলে লেটেন্সি কম হয় এবং থ্রুপুট আরও ভালো হয় (~১.৫x সিকোয়েন্সিয়াল I/O স্পিড, ~৫x র্যান্ডম অ্যাক্সেস I/O স্পিড)। এছাড়াও, এটি ডিস্কে ফ্লাশের সংখ্যা কমিয়ে দেয়, যার ফলে ফিজিক্যাল ডিভাইসের লোড অনেক কম হয়।
- এমুলেটর এখন Windows মেশিনে ডিস্ক বুটের জন্য স্পার্স ফাইল ব্যবহার করে, যা প্রথম বুট এবং "ডেটা-মুছে ফেলা" বুট, দুটিরই গতি বাড়ায়। AVD তৈরি বা রিসেট করার সময়, এমুলেটর এখন ২ জিবি বা তার বেশি ডেটার পরিবর্তে ডিস্কে ১০০-২০০ এমবি ডেটা লেখে।
- বিভিন্ন GUI সংক্রান্ত উন্নতি:
- এমুলেটর এখন Qt 5.7.0 ব্যবহার করে, যার মধ্যে সমস্যার সমাধান এবং পারফর্ম্যান্সের উন্নতি অন্তর্ভুক্ত।
- UI ইনিশিয়ালাইজেশন আর সব এমুলেটর এক্সিকিউটেবলকে Qt প্লাগ-ইন হিসেবে লোড করার চেষ্টা করে না, তাই এটি নাটকীয়ভাবে ছোট, বিশেষ করে HDD-তে।
- UI ইন্টার্যাকশন এখন আরও দ্রুত ও মসৃণ হয়েছে, যার মধ্যে রয়েছে রোটেশন, উইন্ডো ছোট-বড় করা এবং এক্সটেন্ডেড কন্ট্রোল উইন্ডো লোড ও বন্ধ করা।
OpenXR™ এবং OpenXR লোগো হল The Khronos Group Inc.-এর মালিকানাধীন ট্রেডমার্ক এবং এগুলি চীন, ইউরোপীয় ইউনিয়ন, জাপান ও যুক্তরাজ্যে ট্রেডমার্ক হিসেবে রেজিস্টার করা আছে।