ایجاد شبیهساز مجازی دستگاه اندرویدی جهت تست برنامهها
زمانی که برنامه اندرویدی خود را در اندروید استودیو کدنویسی کردیم، قبل از توزیع آن بعنوان یک توسعه دهنده، میبایست اقدام به اجرای آن کنیم. در این مواقع شبیهساز مجازی اندروید استودیو نیاز ما را برطرف نموده و بدون نیاز به یک دستگاه فیزیکی می توانیم برنامه را اجرا و تست کنیم. در این درس نحوه نصب، تنظیم و اجرای شبیهساز مجازی اندروید استودیو بصورت عملی آموزش داده شده است.
فهرست مطالب آموزش
انواع شبیهساز اندروید
برای تست برنامههای اندرویدیتان، به یک دستگاه نیاز دارید. یا یک دستگاه واقعی، مثل یک تلفن همراه و یا تبلت، و یا یک شبیه ساز اندروید که بتوانید روی آن اجرا بگیرید. برای متصل شدن به دستگاههای مجازی از درون اندروید استودیو، اول مطمئن شوید که قبلاً یک پروژه Android Studio رو بازکردید و سپس به قسمت منو بروید و Tools را انتخاب کنید، بعد از قسمت Android، و سپس AVD Manager را انتخاب نمایید.
اگر با ویندوز کار میکنید، ممکن هست از قبل یک دستگاه داشته باشید و اگر داشتید توصیه میکنم پاکش کنید، و از اول شروع کنید.
در این منوی بازشو گزینه delete را انتخاب کنید، و تأیید را بزنید.
نصب و تنظیم شبیهساز مجازی اندروید استودیو
و حالا این صفحه نشان میدهد که هیچ دستگاه مجازیای از قبل وجود نداشته است.
روی دکمه create a new virtual device کلیک کنید.
و با انتخاب phone از قسمت category، میخواهم دستگاهی که Nexus 6P رو شبیهسازی میکند ایجاد کنم، دستگاهی قدرتمند و جدید از گوگل.
روی next کلیک میکنم و بعد نسخه اندروید و یا لول APIای که برای شبیهساز میخواهم را انتخاب میکنم.
در واقع من فقط SDK برای API 23 یا اندروید 6 یا همان مارشمالو را نصب شده دارم.
اگه بخواهید میتوانید سیستمهای دیگری را برای شبیهساز دانلود کنید.
همچنین می توانید روی آپشن بعدی موجود در تب بعدی صفحه کلیک کنید، و هرچیزی که میخواهید را درست از همانجا دانلود کنید.
توجه کنید این خیلی مهم هست، که من از نسخه X86 استفاده کردم.
که برای کامپیوترهای با سیپییو اینتل مناسب هست. اگر بخواهید می توانید از نسخه ARM استفاده کنید، ولی خیلی کندتر عمل میکند.
بنابراین، همین را انتخاب میکنم و روی Next کلیک میکنم.
در صفحه بعد، نام AVD، نوع دستگاه و لول API رو تغییر نمیدهم.
بعد، می توانم اندازه startup و جهت آنرا انتخاب کنم.
من این مقادیر پیش فرض را قبول میکنم و همچنین، در قسمت emulator performance یا عملکرد شبیهساز، use the host GPU را انتخاب میکنم. که باعث میشود انیمیشنهاتون خیلی بهتر روی دستگاه شبیهسازی نشان داده بشوند.
همچنین گزینه store snapshot for faster startup برای راهاندازی سریعتر شبیهساز بکار میرود، اما میبینید که نمیشه هر دوی این گزینهها را با هم انتخاب کرد.
بنابراین، من دومی را انتخاب نمیکنم و ادامه میدهم.
در قسمت device frame گزینه Device Frame Enable یک ویژگی ظاهری هست که فقط باعث میشود دستگاه مجازی کمی بیشتر شبیه به یک دستگاه واقعی بنظر آید. من روی show advanced settings برای نمایش تنظیمات بیشتر کلیک میکنم و بیایید یک نگاهی اینجا بیندازیم. در اینجا، می توانم شبیهساز دوربین را روشن کنم و چگونگی اتصال به شبکه را کنترل کنم. کمی پایینتر میآیم و در آنجا من میتوانم کنترل کنم که چقدر رم به دستگاهم اختصاص بدهم. حالا، اگر حافظه کامپیوترتون 8 گیگابایت یا کمتر بود، پس می بایست که کمترین مقدار حافظه را به این دستگاه اختصاص بدهید.
من مگابایت را به گیگابایت تغییر میدهم، و حالا به صورت پیش فرض 1 گیگابایت از RAM اختصاص داده میشود. من میخواهم برای اجرا از نرم افزار Intel HAXM در بکگراند استفاده کنم. که اگه یادتان باشد این نرمافزار در طول نصب اصلی و اولیهمان نصب شده و قبلاً یک مقدار از حافظه به اون اختصاص یافته بود. روی سیستم من، در ابتدا سه گیگابایت رم به HAXM اختصاص داده شده، ولی در حال حاضر، من در واقع تنها با دو گیگابایت کار میکنم و میخواهم که بتوانم چند شبیهساز را به صورت همان زمان اجرا کنم.
بنابراین، فقط یک گیگابایت حافظه اختصاص میدهم. در این صفحه، همچنین میتوانیم مقدار حافظه اختصاص یافته به حافظه داخلی و یک SD کارت شبیهسازی شده را کنترل کنیم در کل اینجا میتوانیم حافظه گوشیمان را که بر پایه اندروید بصورت مجازی پایهریزی کردیم را تنظیم کنیم. من دوباره مقدار پیش فرض را تغییر نمیدهم و پایینتر میآیم، میبینید که به طور پیشفرض، گزینه enable keyboard input، هم انتخاب شده. در واقع این خیلی مهم هست. و به شما اجازه میدهد با کیبورد صفحه کلید کامپیوترتان به جای صفحه کلید صفحهنمایش شبیهساز کار کنید.
خب، اینها تمام تنظیماتی بود که انجام دادم، و روی finish کلیک میکنم تا دستگاه ایجاد شود. اگر این اولین بار هست که دستگاهی ایجاد کردهاید، ممکن هست کمی طول بکشد، ولی وقتی انجام بشود، لیستی را میبینید و بعد میتوانید آنرا انتخاب کنید و روی دکمه run برای راهاندازی دستگاه کلیک کنید.
اجرای برنامه اندرویدی بر روی دستگاه مجازی
با اینکار به رابط کاربری اندروید استودیو برمیگردم. میبینید که پنجره Run به طور خودکار باز شده است و در اینجا، بازخوردی را به عنوان شروع دستگاه میبینم.
در ویندوز، ممکن هست که دستگاه مجازی را کاملاً متمرکز و در مرکز صفحه دسکتاپتان نبینید.
در غیر اینصورت، فقط آنرا به محل مورد نظر درآگ کنید، و یا اگر نشد آنرا به بالا درگ کنید. میتوانید کلیدهای alt-space و M را هم فشار بدهید. بعد باید بتوانید آنرا با صفحه کلید حرکت بدهید. ممکن هست چند لحظه طول بکشد تا شبیهساز استارت شود و دستگاه مجازی قابل دسترس شود. ولی وقتی در دسترس بود، میتوانید برنامهتان را روی دستگاه مجازی اجرا کنید. اولین باری که دستگاه مجازی را اجرا میکنید، صفحه خوش آمد را میبینید. من با ماوس روی got it کلیک میکنم.
بعد از بالا منو را پایین میکشم تا اخطارها را ببینم. با کلیک و درگ هر کدام از اخطارها به راست آنها را ببندید. و حالا دستگاه مجازی من آماده اجرا یک برنامه هست.
Run کردن برنامه از اندروید استودیو بر روی شبیهساز مجازی
من به اندروید استودیو برمیگردم و روی دکمه ران در تولبار کلیک میکنم. یک دیالوگ پیغام میبینم که منتظر سرویس ADB هست. سرویسی که در بکگراند اندروید استودیو را به دستگاه وصل میکند.
من شبیه سازم را در لیست میبینم و روی اوکی کلیک میکنم. و بعد چند تا پیام را که نشان میدهند برنامهام لود شده را میبینم.
برمیگردم به شبیهسازم و میبینم که برنامهام روی آن لود شده است. بعد روی اکشنبار در قسمت پایین و گوشه سمت راست کلیک میکنم و چندین پیام میبینم. بعداً برای شما توضیح میدهم که چطور اینکارها را انجام بدید.
خب حالا شما موفق شدید یک دستگاه مجازی بسازید که Nexus 6P را با اندروید 6 یا مارشمالو شبیهسازی میکند.
حسن
سلام. اگه لپ تاپ قابلیت virtualization نداشته باشه چطور میشه debug کرد؟ من گوشیم رو هم نمیرسه در لیست run . چاره کار چیه؟
طهاکو
با درود
آموزه “اتصال صحیح یک دستگاه فیزیکی واقعی جهت تست برنامهها” را از سرفصل دوم دوره “آموزش جامع توسعه اندروید Android App Development” مشاهده نمایید.