از دستگاه های مجازی شبیه ساز اندروید استفاده کنید

شما می‌توانید از شبیه‌ساز اندروید برای ایجاد شبیه‌سازی‌هایی از دستگاه‌های اندروید که ایمیج‌های سیستم اندروید سفارشی شما را اجرا می‌کنند، استفاده کنید. علاوه بر این، می‌توانید پشتیبانی از چند نمایشگر را به شبیه‌سازی‌های شبیه‌ساز اندروید اضافه کنید.

معماری شبیه‌ساز اندروید

شبیه‌ساز اندروید، سیستم عامل اندروید را در یک ماشین مجازی به نام دستگاه مجازی اندروید (AVD) اجرا می‌کند. هر AVD شامل پشته کامل نرم‌افزار اندروید است و طوری اجرا می‌شود که انگار روی یک دستگاه فیزیکی است. شکل 1 معماری سطح بالای شبیه‌ساز اندروید را نشان می‌دهد. برای اطلاعات بیشتر در مورد شبیه‌ساز، به بخش «اجرای برنامه‌ها روی شبیه‌ساز اندروید» مراجعه کنید.

معماری شبیه‌ساز اندروید

شکل 1. معماری شبیه‌ساز اندروید.

ساخت ایمیج‌های AVD

هر AVD شامل یک تصویر سیستم اندروید است که در آن AVD اجرا می‌شود. مدیر AVD شامل برخی از تصاویر سیستم است. و شما می‌توانید تصاویر سیستم AVD سفارشی را از کد منبع خود بسازید و شبیه‌سازی‌های دستگاه را برای اجرای آنها ایجاد کنید.

برای ساخت و اجرای یک ایمیج سیستم AVD:

  1. دانلود سورس اندروید:

    mkdir aosp-android-latest-release; cd aosp-android-latest-release
    repo init -u
    repo sync -j24

اگر می‌خواهید نسخه‌های دیگری از اندروید را بسازید، می‌توانید نام شاخه‌های آنها را در مخزن عمومی اندروید پیدا کنید. آنها به نام‌های کد، برچسب‌ها و شماره‌های ساخت اندروید نگاشت می‌شوند.

  1. ساخت یک تصویر سیستم AVD. این همان فرآیند ساخت یک تصویر سیستم دستگاه اندروید است. برای مثال، برای ساخت یک AVD 64 بیتی x86:

    source ./build/envsetup.sh
    lunch sdk_phone_x86_64
    make -j32
  2. تصویر سیستم AVD را در شبیه‌ساز اندروید اجرا کنید:

    emulator

برای جزئیات بیشتر در مورد اجرای شبیه‌ساز، به گزینه‌های راه‌اندازی خط فرمان مراجعه کنید. شکل 2 نمونه‌ای از شبیه‌ساز اندروید را که یک AVD را اجرا می‌کند، نشان می‌دهد:

شبیه‌ساز اندروید که AVD را اجرا می‌کند.

شکل 2. شبیه‌ساز اندروید که یک AVD را اجرا می‌کند.

تصاویر سیستم AVD را برای استفاده دیگران با اندروید استودیو به اشتراک بگذارید

برای به اشتراک گذاشتن ایمیج‌های سیستم AVD خود با دیگران، این دستورالعمل‌ها را دنبال کنید. آن‌ها می‌توانند از ایمیج‌های سیستم AVD شما با اندروید استودیو برای توسعه و آزمایش برنامه‌ها استفاده کنند.

  1. بسته‌های sdk و sdk_repo اضافی ایجاد کنید:

    برای اندروید ۱۳ و بالاتر، از دستور emu_img_zip استفاده کنید:

    $ make emu_img_zip
    

    این یک فایل sdk-repo-linux-system-images-eng.[username]].zip ایجاد می‌کند.

    برای اندروید ۱۲ و پایین‌تر، از دستور sdk_repo استفاده کنید:

    $ make -j32 sdk sdk_repo
    

    دستور make sdk sdk_repo دو فایل در مسیر aosp-android-latest-release/out/host/linux-x86/sdk/sdk_phone_x86 ایجاد می‌کند:

    • sdk-repo-linux-system-images-eng.[username].zip
    • repo-sys-img.xml
  2. فایل sdk-repo-linux-system-images-eng.[username].zip در جایی که برای کاربران شما قابل دسترسی باشد، میزبانی کنید و URL آن را برای استفاده به عنوان URL تصویر سیستم AVD دریافت کنید.

  3. برای اندروید ۱۲ و پایین‌تر، repo-sys-img.xml را به صورت زیر ویرایش کنید:

    • <sdk:url> را به آدرس تصویر سیستم AVD خود به‌روزرسانی کنید.
    • برای کسب اطلاعات بیشتر در مورد سایر به‌روزرسانی‌های این فایل، به sdk-sys-img-03.xsd مراجعه کنید.
    • repo-sys-img.xml را در جایی که برای کاربران شما قابل دسترسی است، میزبانی کنید و URL آن را به عنوان URL سایت به‌روزرسانی سفارشی دریافت کنید.

برای استفاده از یک تصویر AVD سفارشی، مراحل زیر را در SDK Manager انجام دهید:

  1. آدرس اینترنتی سایت به‌روزرسانی سفارشی را به عنوان یک سایت به‌روزرسانی SDK اضافه کنید.

    این کار تصویر سیستم AVD سفارشی شما را به صفحه تصاویر سیستم اضافه می‌کند.

  2. با دانلود و انتخاب ایمیج سیستم AVD سفارشی ، یک AVD ایجاد کنید .

اضافه شدن پشتیبانی از چند نمایشگر

اندروید ۱۰ قابلیت چند نمایشگری را بهبود بخشیده تا از موارد استفاده بیشتری مانند حالت خودکار و دسکتاپ پشتیبانی کند. شبیه‌ساز اندروید نیز از شبیه‌سازی چند نمایشگری پشتیبانی می‌کند. بنابراین می‌توانید بدون راه‌اندازی سخت‌افزار واقعی، یک محیط چند نمایشگری خاص ایجاد کنید.

شما می‌توانید با ایجاد تغییرات زیر یا با انتخاب دلخواه از بین این CLها ، پشتیبانی از چند نمایشگر را به AVD اضافه کنید.

  • با اضافه کردن این خطوط به فایل build/target/product/sdk_phone_x86.mk ارائه‌دهنده چند نمایشگر را به سیستم اضافه کنید:

    PRODUCT_ARTIFACT_PATH_REQUIREMENT_WHITELIST := \
        system/lib/libemulator_multidisplay_jni.so \
        system/lib64/libemulator_multidisplay_jni.so \
        system/priv-app/MultiDisplayProvider/MultiDisplayProvider.apk \
    PRODUCT_PACKAGES += MultiDisplayProvider
    
  • با اضافه کردن این خط به فایل device/generic/goldfish/data/etc/advancedFeatures.ini ، ویژگی Multi-Display را فعال کنید:

    MultiDisplay = on
    

شما می‌توانید جدیدترین ویژگی‌های شبیه‌ساز و اطلاعات انتشار را از منابع زیر پیدا کنید: