يسرّنا الإعلان عن أنّ الإصدار 1.5.0 من Jetpack WindowManager أصبح الآن إصدارًا ثابتًا.
يستند هذا الإصدار إلى الأساس القوي لقابلية التكيّف في WindowManager، ما يسهّل إنشاء واجهات مستخدم متجاوبة ومصقولة تبدو رائعة على جميع أحجام الشاشات. مع استمرار نمو منظومة Android المتكاملة، يتفاعل المستخدمون مع التطبيقات على مجموعة أكبر من الأجهزة مقارنةً بأي وقت مضى، بدءًا من الهواتف والأجهزة القابلة للطي إلى الأجهزة اللوحية والشاشات المتصلة وأجهزة Chromebook وحتى شاشات السيارات في وضع التوقف.
يركّز الإصدار 1.5 من WindowManager على توفير أدوات أفضل لبيئة الأجهزة المتنوعة هذه.
الميزات الجديدة في الإصدار 1.5 من WindowManager
يقدّم هذا الإصدار الثابت نقاط توقّف جديدة للشاشات الكبيرة جدًا، ويحسّن واجهة برمجة التطبيقات الخاصة بميزة "تضمين الأنشطة"، ويوفر مرونة أكبر في احتساب مقاييس النوافذ.
فئات جديدة لأحجام النوافذ: كبيرة وكبيرة جدًا
أهم ما يتضمّنه الإصدار 1.5 هو إضافة فئتَين جديدتَين لحجم النافذة حسب العرض: "كبير" و"كبير جدًا".
فئات أحجام النوافذ هي مجموعتنا الرسمية من نقاط توقّف إطار العرض التي تساعدك في تصميم وتطوير تنسيقات متجاوبة. في الإصدار 1.5، سنوسّع نطاق هذه الإرشادات ليشمل الشاشات التي تتجاوز الأجهزة اللوحية العادية.
في ما يلي نقاط التوقف الجديدة للعرض:
- كبير: للعروض التي تتراوح بين 1200 و1600 وحدة بكسل مستقلة الكثافة
- كبير جدًا: للعروض ≥1600dp
فئات أحجام النوافذ المختلفة استنادًا إلى عرض الشاشة
لماذا هذه الإعدادات مهمة؟
بدءًا من الإصدار التجريبي الثاني من Android 16 QPR1، يتيح نظام التشغيل Android الشاشات المتصلة، ما يمكّن المستخدمين من توصيل شاشة خارجية بأجهزتهم وتحويلها إلى أداة بشاشة كبيرة تضاهي أجهزة الكمبيوتر المكتبية.
هاتف متصل بشاشة خارجية، مع تشغيل جلسة سطح مكتب على الشاشة الخارجية
مع توفّر هذه الميزة الجديدة، يصبح من الضروري تقديم إرشادات واضحة بشأن تضمين شاشات أكبر.
في مساحات العرض الكبيرة جدًا هذه، لا يكون مجرد توسيع التصميم الموسّع للأجهزة اللوحية هو أفضل تجربة للمستخدمين دائمًا. على سبيل المثال، يمكن أن يعرض برنامج البريد الإلكتروني لوحتَين (صندوق بريد ورسالة) بسهولة في فئة حجم النافذة "موسّع". ولكن على شاشة سطح مكتب كبيرة جدًا، يمكن لبرنامج البريد الإلكتروني عرض ثلاث لوحات أو حتى أربع لوحات بشكل أنيق، ربما صندوق بريد وقائمة رسائل ومحتوى الرسالة الكامل ولوحة تقويم/مهام، كل ذلك في وقت واحد.
من خلال توفير نقاط توقّف رسمية لأحجام الشاشات الكبيرة جدًا، يمنحك الإصدار 1.5 من WindowManager إشارة واضحة لتقديم تصميمات مخصّصة لتوفير تجربة سطح مكتب فعّالة وغنية بالمعلومات.
يمكن احتساب فئات حجم النافذة باستخدام computeWindowSizeClass()، وهي دالة إضافة في مكتبة androidx.window.core.layout توسّع النوع Set<WindowSizeClass>.
لتضمين فئات حجم النافذة الجديدة في مشروعك، ما عليك سوى استدعاء الدالة من المجموعة WindowSizeClass.BREAKPOINTS_V2 بدلاً من WindowSizeClass.BREAKPOINTS_V1:
val currentWindowMetrics = WindowMetricsCalculator.getOrCreate() .computeCurrentWindowMetrics(LocalContext.current) val sizeClass = WindowSizeClass.BREAKPOINTS_V2 .computeWindowSizeClass(currentWindowMetrics)
بعد ذلك، طبِّق التصميم الصحيح عندما تتأكّد من أنّ تطبيقك يتضمّن مساحة كافية على الأقل:
if(sizeClass.isWidthAtLeastBreakpoint(
WindowSizeClass.WIDTH_DP_LARGE_LOWER_BOUND)){
...
// window is at least 1200 dp wide
}المكتبات التكيّفية
تساعدك مكتبة Compose Material 3 Adaptive في إنشاء واجهات مستخدم متكيّفة تتكيّف تلقائيًا وفقًا لإعدادات النافذة الحالية، مثل فئات حجم النافذة أو أوضاع الجهاز.
والخبر السار هو أنّ المكتبة محدّثة حاليًا لتتضمّن نقاط التوقّف الجديدة. بدءًا من الإصدار 1.2 (الذي أصبح الآن في مرحلة الإصدار المرشّح)، تتوافق وظائف توجيهات تصميم اللوحة التلقائية مع فئات أحجام عرض النوافذ الكبيرة والكبيرة جدًا.
ما عليك سوى الموافقة على استخدام نقاط التوقّف الجديدة من خلال الإشارة في ملف تصميم Gradle إلى أنّك تريد استخدامها:
currentWindowAdaptiveInfo( supportLargeAndXLargeWidth = true)
تحسينات إضافية
- تضمين الأنشطة: الحفظ التلقائي والاستعادة: يمكن الآن لـ WindowManager حفظ حالة تقسيمات تضمين الأنشطة واستعادتها تلقائيًا. يساعد ذلك في الحفاظ على تصميم المستخدم عند إعادة إنشاء العملية، ما يؤدي إلى توفير تجربة أكثر استقرارًا واتساقًا. لم يعُد على المطوّرين حفظ الحالة واستعادتها يدويًا، بل يمكنهم ببساطة تفعيل الحفظ التلقائي من خلال ضبط السمة EmbeddingConfiguration#isAutoSaveEmbeddingState.
- WindowMetrics الموسّعة: يمكنك الآن احتساب WindowMetrics من سياق التطبيق، وليس فقط من سياق النشاط. ويوفّر ذلك مرونة أكبر في الوصول إلى معلومات النافذة من أجزاء مختلفة من تطبيقك.
كيفية البدء
لبدء استخدام فئتَي الحجم الجديدتَين "كبير" و"كبير جدًا" وميزات الإصدار 1.5 الأخرى في مشاريع Android، عليك تعديل تبعيات تطبيقك في build.gradle.kts إلى أحدث إصدار ثابت:
dependencies {
implementation("androidx.window:window:1.5.0")
// or, if you're using the WindowManager testing library:
testImplementation("androidx.window:window-testing:1.5.0")
}يُعدّ الإصدار 1.5 من WindowManager خطوة أخرى إلى الأمام نحو إنشاء تطبيقات متكيّفة بالكامل تعمل على جميع أشكال الأجهزة التي تعمل بنظام التشغيل Android. يمكنك الاطّلاع على ملاحظات الإصدار الرسمية للحصول على قائمة كاملة بالتغييرات وإصلاحات الأخطاء.
نتمنّى لك تجربة ترميز ممتعة.
-
أخبار المنتجاتيسرّنا الإعلان عن إنجاز كبير في تقريب تجربة استخدام الأجهزة الجوّالة وأجهزة الكمبيوتر المكتبي على Android: أصبح استخدام الشاشات المتصلة متاحًا للجميع مع إصدار Android 16 QPR3.
Francesco Romano • مدّة القراءة: 7 دقائق -
أخبار المنتجاتعلى Google Play، نعمل باستمرار على توسيع منصة الاشتراكات لمساعدتك في تعزيز النمو والتكيّف مع نماذج الأعمال الجديدة وتلبية احتياجات المستخدمين أينما كانوا.
Sheenam Mittal • مدّة القراءة: 4 دقائق -
أخبار المنتجاتفي العام الماضي، أصبح بإمكان "استوديو Android" استخدام أي نموذج للذكاء الاصطناعي. واليوم، نتّخذ الخطوة التالية من خلال توفير إمكانية اختيار وكلاء الترميز.
Matthew Warner • مدّة القراءة: 3 دقائق
يمكنك تلقّي أحدث الإحصاءات حول تطوير تطبيقات Android في بريدك الوارد أسبوعيًا.