در اندروید 7.0 و بالاتر، دستگاه ها می توانند چندین برنامه را به طور همزمان با استفاده از چند پنجره نمایش دهند. اندروید از سه پیکربندی چند پنجره ای پشتیبانی می کند:
- Split-screen پیاده سازی پیش فرض چند پنجره ای است که دو صفحه فعالیت را فراهم می کند که کاربران می توانند برنامه ها را در آن قرار دهند.
- Freeform به کاربران اجازه می دهد تا به صورت پویا اندازه پانل های فعالیت را تغییر دهند و بیش از دو برنامه روی صفحه نمایش خود قابل مشاهده باشند.
- تصویر در تصویر (PIP) به دستگاههای اندرویدی اجازه میدهد تا محتوای ویدیویی را در یک پنجره کوچک پخش کنند در حالی که کاربر با برنامههای دیگر تعامل دارد.
پیاده سازی
پشتیبانی از چند پنجره به طور پیش فرض در اندروید 7.0 و بالاتر فعال است. برای غیرفعال کردن آن، پرچم config_supportsMultiWindow
را در فایل config.xml دستگاهتان روی false
قرار دهید.
چند پنجرهای بهطور پیشفرض در همه دستگاههای با رم پایین غیرفعال است (دستگاههایی که ActivityManager.isLowRam()
را اعلام میکنند. دستگاههای با رم پایین، مقدار پرچم config_supportsMultiWindow
را نادیده میگیرند.
تقسیم صفحه
تجربه پیشفرض چند پنجرهای حالت تقسیم صفحه است، که در آن رابط کاربری سیستم در وسط دستگاه به صورت عمودی یا افقی تقسیم میشود. کاربران می توانند بسته به جهت دستگاه، اندازه پنجره را با کشیدن خط تقسیم از یک طرف به طرف دیگر یا از بالا به پایین تغییر دهند.
پس از فعال کردن صفحه نمایش تقسیمشده، سازندگان دستگاه میتوانند فرم آزاد یا PIP را فعال کنند.
Android 8.0 و بالاتر با فشرده کردن راهانداز وقتی کاربر روی صفحه اصلی ضربه میزند، تقسیم صفحه را بهبود میبخشد. برای جزئیات پیاده سازی، به تعاملات صفحه تقسیم شده مراجعه کنید.
فرم آزاد
پس از فعال کردن حالت چند پنجرهای با پرچم config_supportsMultiWindow
، سازندگان دستگاه میتوانند پنجرهسازی آزاد را مجاز کنند. این حالت بیشتر در دستگاه های بزرگتر مانند تبلت ها کاربرد دارد.
برای پشتیبانی از حالت freeform، ویژگی سیستم PackageManager#FEATURE_FREEFORM_WINDOW_MANAGEMENT
را در /android/frameworks/base/core/java/android/content/pm/PackageManager.java
فعال کنید و config_freeformWindowManagement
را در config.xml روی true
تنظیم کنید config.xml .
<bool name="config_freeformWindowManagement">true</bool>
تصویر در تصویر
پس از فعال کردن حالت چند پنجرهای با پرچم config_supportsMultiWindow
، سازندگان دستگاه میتوانند از تصویر در تصویر پشتیبانی کنند که به کاربران امکان میدهد در حین مرور سایر فعالیتها ویدیو تماشا کنند. در حالی که این ویژگی برای دستگاههای تلویزیون Android هدفگذاری شده است، انواع دستگاههای دیگر ممکن است از این ویژگی پشتیبانی کنند.
برای پشتیبانی از PIP، ویژگی سیستم PackageManager#FEATURE_PICTURE_IN_PICTURE
را در /android/frameworks/base/core/java/android/content/pm/PackageManager.java
فعال کنید.
برای جزئیات بیشتر اجرای PIP برای دستگاههای دارای Android نسخه 8.0 و بالاتر، صفحه تصویر در تصویر را ببینید.
رابط کاربری سیستم
از همه رابطهای کاربری استاندارد سیستم مطابق با اسناد توسعهدهنده چند پنجرهای پشتیبانی کنید.
برنامه ها
برای پشتیبانی از حالت چند پنجره ای برای برنامه های از پیش بارگذاری شده، به مستندات برنامه نویس Android مراجعه کنید.
اعتبار سنجی
برای تایید اجرای چند پنجره ای خود، تست های CTS مربوطه را اجرا کنید و دستورالعمل های تست چند پنجره ای را دنبال کنید.
برای Android 7.0، آزمایشها در /platform/cts/hostsidetests/services/activitymanager/src/android/server/cts
هستند. در اندروید 8.0 و بالاتر، آزمایشها در /platform/cts/tests/framework/base/activitymanager/src/android/server/am
هستند.