في الإصدار 7.0 من Android والإصدارات الأحدث، يمكن للأجهزة عرض تطبيقات متعددة في الوقت نفسه باستخدام ميزة "تعدد النوافذ". يتيح Android ثلاثة إعدادات للنوافذ المتعددة:
- تقسيم الشاشة هو التنفيذ التلقائي لميزة "المتعدّد النوافذ"، والذي يقدّم لوحتَي نشاط يمكن للمستخدمين وضع التطبيقات فيهما.
- يسمح وضع شكل حر للمستخدمين بتغيير حجم ملفّات النشاط ديناميكيًا وعرض أكثر من تطبيقَين على الشاشة.
- تتيح ميزة نافذة ضمن النافذة لأجهزة Android تشغيل محتوى الفيديو في نافذة صغيرة بينما يتفاعل المستخدم مع التطبيقات الأخرى.
التنفيذ
تكون ميزة "تعدد النوافذ" مفعّلة تلقائيًا في الإصدار 7.0 من نظام التشغيل Android والإصدارات الأحدث.
لإيقاف هذه الميزة، اضبط العلامة config_supportsMultiWindow
على
false
في ملف
config.xml على جهازك.
تكون ميزة "تعدد النوافذ" غير مفعّلة تلقائيًا على جميع الأجهزة التي تحتوي على ذاكرة وصول عشوائي (RAM) منخفضة (الأجهزة التي
تُعلن عن ActivityManager.isLowRam()
). وتتجاهل الأجهزة التي تحتوي على ذاكرة وصول عشوائي (RAM) منخفضة
قيمة العلامة config_supportsMultiWindow
.
تقسيم الشاشة
التجربة التلقائية لوضع "تعدد النوافذ" هي وضع "تقسيم الشاشة"، حيث يتم تقسيم واجهة مستخدم System في منتصف الجهاز بالوضع الرأسي أو الأفقي. يمكن للمستخدمين تغيير حجم النافذة من خلال سحب الخط الفاصل من جانب إلى آخر أو من أعلى إلى أسفل، حسب اتجاه الجهاز.
بعد تفعيل وضع "تقسيم الشاشة"، يمكن لصنّاع الأجهزة اختيار تفعيل وضع "شاشة متعدّدة" أو وضع "صورة داخل صورة".
يعمل نظام التشغيل Android 8.0 والإصدارات الأحدث على تحسين وضع "تقسيم الشاشة" من خلال ضغط مشغّل التطبيقات عندما ينقر المستخدم على الصفحة الرئيسية. لمعرفة تفاصيل التنفيذ، يُرجى الاطّلاع على التفاعلات على الشاشة المُقسّمة.
Freeform
بعد تفعيل وضع "تعدد النوافذ" باستخدام العلامة
config_supportsMultiWindow
، يمكن لشركات تصنيع الأجهزة
السماح بعرض النوافذ الحرة. يكون هذا الوضع مفيدًا بشكلٍ أكبر على الأجهزة الأكبر حجمًا،
مثل الأجهزة اللوحية.
لتفعيل وضع "الشكل الحر"، فعِّل ميزة
PackageManager#FEATURE_FREEFORM_WINDOW_MANAGEMENT
system
في
/android/frameworks/base/core/java/android/content/pm/PackageManager.java
واضبط config_freeformWindowManagement
على true
في
config.xml.
.
<bool name="config_freeformWindowManagement">true</bool>
نافذة ضمن النافذة
بعد تفعيل وضع "تعدد النوافذ" باستخدام العلامة
config_supportsMultiWindow
، يمكن لصنّاع الأجهزة
تفعيل ميزة نافذة ضمن نافذة، ما يتيح للمستخدمين مشاهدة
الفيديو أثناء تصفّح الأنشطة الأخرى. على الرغم من أنّ هذه الميزة مخصّصة لأجهزة
Android Television، قد تتوفّر هذه الميزة أيضًا على أنواع أخرى من الأجهزة.
لتفعيل ميزة "صورة في صورة"، فعِّل ميزة
PackageManager#FEATURE_PICTURE_IN_PICTURE
في النظام في
/android/frameworks/base/core/java/android/content/pm/PackageManager.java
.
لمزيد من التفاصيل حول تنفيذ ميزة "نافذة ضمن النافذة" على الأجهزة التي تعمل بالإصدار 8.0 من نظام التشغيل Android والإصدارات الأحدث، يُرجى الاطّلاع على صفحة نافذة ضمن النافذة.
واجهة مستخدِم النظام
أن تكون متوافقة مع جميع واجهات المستخدم العادية للنظام وفقًا لتعليمات مستندات المطوّرين حول ميزة "النوافذ المتعددة"
التطبيقات
لتفعيل وضع "النوافذ المتعددة" للتطبيقات المحمَّلة مسبقًا، يُرجى الرجوع إلى مستندات مطوّري تطبيقات Android.
التحقُّق
للتحقّق من صحة تنفيذ ميزة "تعدد النوافذ"، عليك إجراء اختبارات CTS ذات الصلة واتّباع تعليمات اختبار ميزة "تعدد النوافذ".
بالنسبة إلى Android 7.0، تكون الاختبارات في
/platform/cts/hostsidetests/services/activitymanager/src/android/server/cts
.
في الإصدار 8.0 من نظام التشغيل Android والإصدارات الأحدث، تكون الاختبارات في
/platform/cts/tests/framework/base/activitymanager/src/android/server/am
.