مرحبًا بك في Now in Android، دليلك المستمر إلى كل ما هو جديد ومهم في عالم تطوير تطبيقات Android.
يمكنك الاطّلاع على تغطية الإصدار التجريبي الأول من Android 16 QPR2 وتحديث ميزات Narwhal في "استوديو Android" والإصدار 1.9 من Jetpack Compose والإصدار 1.8 من Media 3 وShape Morphing وAutofill in Compose وغير ذلك الكثير.
يمكنك مشاهدة ملخّص فيديو:
لدينا أيضًا بودكاست.
ولكن هذه المشاركة تتضمّن المعلومات الأكثر تفصيلاً، لذا ننصحك بمتابعة القراءة.
الإصدار التجريبي الأول من حزمة QPR2 لنظام التشغيل Android 16 متاح الآن ✨
يتوفّر الآن الإصدار التجريبي الأول من Android 16 QPR2، وهو إصدار Android الأوّل الذي يتضمّن إصدارًا ثانويًا من حزمة تطوير البرامج (SDK) لنظام التشغيل Android. يمكن أن تتضمّن إصدارات حزمة SDK الثانوية واجهات برمجة تطبيقات جديدة توسّع ميزات النظام الأساسي، ولكن لا يمكنها تقديم targetSdkVersion تغييرات في السلوك محظورة، ما يقلّل من مقدار الاختبارات التي تحتاج إلى إجرائها على تطبيقاتك.
يمكنك طلب بيانات من واجهات برمجة التطبيقات الجديدة من خلال وضع علامة في المربّع SDK_INT_FULL مقابل التعداد VERSION_CODES_FULL:
if (Build.VERSION.SDK_INT_FULL >= Build.VERSION_CODES_FULL.BAKLAVA_1) { // Call new APIs from the Android 16 QPR2 release }
لا يمكن استخدام VERSION_CODES_FULL في سمات ملف البيان uses-sdk.
في ما يلي بعض التغييرات الرئيسية في الإصدار التجريبي الأول من QPR2.
واجهة المستخدم وتجربة النظام وتسهيل الاستخدام:
- يتيح خيار "توسيع المظهر الداكن" عكس مظهر التطبيقات الفاتحة بذكاء للمستخدمين الذين يفضّلون المظهر الداكن.
- يمكن للنظام إنشاء رموز تطبيقات مستوحاة من موضوع معيّن تلقائيًا إذا لم يوفّر تطبيقك طبقة أحادية اللون.
- تحافظ جلسات أداة الاختيار التفاعلية على نشاط واجهة مستخدم تطبيقك أثناء فتح ورقة المشاركة، وذلك باستخدام
ChooserManagerوChooserSession. - تتيح واجهة برمجة التطبيقات الجديدة لنقل البيانات نقل البيانات بشكل أكثر موثوقية وأمانًا بين Android وiOS، ما يتطلّب إجراء تعديلات على ملف XML الخاص بقواعد استخراج البيانات في تطبيقك وتنفيذ
BackupAgent. - تم توسيع حزمة
android.graphics.pdfلتتيح إضافة التعليقات التوضيحية إلى مستندات PDF وتعديلها من خلالPdfRenderer.Page. - تم الآن تخصيص قيم
ViewConfigurationللأجهزة الافتراضية الفردية، لذا يُرجى الانتقال إلىViewConfiguration.get(context)لسيناريوهات العرض المتعدد. - يمكنك التحكّم بشكل أدق في التجاوب الحسّي من خلال تحديد
VibrationAttributesباستخدامView.performHapticFeedback(HapticFeedbackRequest) - يمكن الآن تعيين مربّعات "الإعدادات السريعة" لفئات محدَّدة مُسبقًا في ملف
AndroidManifest.xml.
الوسائط والصوت:
- إتاحة فك الترميز البرمجي لـ "تنسيقات ونماذج الصوت الغامر" (IAMF)، وهو تنسيق مفتوح للصوت المكاني
- تم دمج ميزة "مشاركة الصوت الشخصي" لأجهزة Bluetooth LE Audio مباشرةً في "مبدّل الإخراج" في النظام.
- يمكن للمستخدمين التحكّم في سطوع المحتوى المعروض بتكنولوجيا HDR باستخدام شريط تمرير سطوع HDR/SDR
- يمكن أن تبرز إضافات "أداة اختيار الصور" ألبومات أو طلبات بحث معيّنة.
إمكانية الاتصال:
- تتيح لك التحسينات على ميزة "إدارة الأجهزة المصاحبة" (CDM) توفير رموز أجهزة مخصّصة والاستماع إلى معاودة الاتصال
EVENT_ASSOCIATION_REMOVEDوتفعيل عملية إثبات الهوية على مستوى التطبيقات باستخدام DeviceId. - تشمل تحديثات البلوتوث إمكانية البحث غير النشط عن
BluetoothLeScanner(ScanSettings.SCAN_TYPE_PASSIVE) وأسباب فقدان الربط (BluetoothDevice.EXTRA_BOND_LOSS_REASON) واسترداد معرّفات UUID للخدمة مباشرةً (BluetoothDevice.EXTRA_UUID_LE). - تتيح تحديثات تحديد المدى باستخدام Wi-Fi RTT (
RttStationRangingParams) تحديد المدى مقارنةً بالمحطات. - يتوفّر
PhoneNumberManagerجديد لتحليل أرقام الهواتف والتحقّق من صحتها من عناوين IMS P-Associated-URI. - تتيح تحسينات خصوصية شبكة MediaRouter إمكانية البث عبر وسائط جديدة مثل البلوتوث وUWB. عليك استخدام أداة اختيار الإخراج في النظام أو طلب أذونات
NEARBY_DEVICESلأدوات اختيار مخصّصة داخل التطبيق.
الخصوصية والأمان:
- تتوفّر الآن حالة أمان جديدة على مستوى النظام، وهي "قفل الجهاز الآمن"، وتعمل على قفل الأجهزة وتتطلّب إجراء المصادقة الأساسية لفتح القفل.
- تمت إضافة زر تفعيل/إيقاف ميزة "القفل عند تعذّر المصادقة" في إعدادات "حماية الهاتف من السرقة" الظاهرة للمستخدمين.
إنتاجية المطوّر:
- تتيح لك واجهات برمجة التطبيقات الجديدة في
AppWidgetManagerطلب البحث عن مقاييس التفاعل مع التطبيقات المصغّرة. - ستتلقّى التطبيقات القابلة للتصحيح التي يتم تثبيتها من خلال ADB الآن تحذيرات مبكرة بشأن التوافق مع حجم الصفحة البالغ 16 كيلوبايت.
- تضيف
ProfilingManagerإمكانية استخدام مشغّلات جديدة لتسجيل بيانات الأداء يبدأها النظام، كما تضيفrequestRunningSystemTraceلتسجيل عمليات التتبُّع في الخلفية. - يتوفّر خيار "تسجيل الطباعة بالتفصيل" في "خيارات المطوّرين"، وهو يوفّر معلومات إضافية لتصحيح الأخطاء في "إطار عمل الطباعة في Android".
- يمكن إجراء اختبارات أكثر فعالية لتجارب الاستخدام على أجهزة الكمبيوتر والأجهزة التي تتضمّن شاشات متعددة من خلال واجهات برمجة التطبيقات الجديدة
UiAutomationللقطات الشاشة على الشاشات غير التلقائية وAccessibilityWindowInfo.refreshالعامة. - تمت إضافة إمكانية استخدام واجهة برمجة التطبيقات مع مكتبة
androidx.core:core-backported-fixesالجديدة. - أصبحت تطبيقات واجهة المستخدم الرسومية متوافقة الآن مع "Terminal لنظام التشغيل Linux"
- يتيح
WindowInspector.addGlobalWindowViewsListenerتلقّي إشعارات في الوقت الفعلي بشأن تغييرات العرض الأساسي.
يمكنك تسجيل أي جهاز Pixel متوافق لتلقّي تحديثات الإصدار التجريبي عبر اتصال لاسلكي أو استخدام صور نظام 64 بت مع "محاكي Android" في "استوديو Android". من المقرّر إطلاق "إصدارات مستقرة من المنصّة" في أكتوبر 2025.
الإصدار Narwhal من تحديث "استوديو Android" الذي يحتوي على ميزات جديدة أصبح ثابتًا — ابدأ استخدام "وضع الوكيل" 🐳
أصبح تحديث Narwhal من "استوديو Android" ثابتًا الآن، ويتضمّن ميزات وتحسينات جديدة، منها:
- تتوفّر ميزة Gemini في استوديو Android: وضع الوكيل لمهام الترميز المتعدّدة المراحل
- تتيح لك قواعد مكتبة الطلبات تخصيص نتائج الذكاء الاصطناعي في Gemini لتلبية احتياجات مشروعك.
- تستخدم ميزة تحويل واجهة المستخدم باستخدام Gemini واجهة مستخدم بلغة طبيعية لتكرار واجهة المستخدم في Compose.
- إتاحة أدوات تطوير تجارب غامرة من خلال محاكي Android XR المضمّن ونموذج XR جديد و"أداة فحص التنسيق" المضمّنة لتجارب XR
- إمكانية الوصول إلى المزيد من الأجهزة من خلال مختبرات أجهزة شركاء Android في ميزة "بث أجهزة Android"
- معاينات أفضل في Compose من خلال ميزة "التنقّل المحسّن في الرمز" وأداة اختيار معاينة Compose الجديدة
- تفعيل برنامج K2 Kotlin المجمّع تلقائيًا لتحسين أداء عملية الإنشاء
- أدوات حجم الصفحة 16 كيلوبايت مع تحذيرات وأدوات تحليل وأداة محاكي Lint لمساعدتك في الاستعداد للأجهزة القادمة التي تستخدم صفحات بحجم 16 كيلوبايت
ميزة "بث التطبيقات على أجهزة Android" من Firebase
أتاحت ميزة "بث تطبيقات Android على الأجهزة"، المستندة إلى Firebase، إمكانية استخدام "مختبرات أجهزة شركاء Android" بشكل ثابت، ما يتيح لك الاتصال عن بُعد بأجهزة Android فعلية يستضيفها شركاء المصنّعين الأصليين للأجهزة، بما في ذلك Samsung وXiaomi وOPPO وOnePlus وvivo.
تسريع عملية التطوير من خلال إصدارات شهرية من "استوديو Android"، أي إصدارات أكثر بمقدار الضعف مقارنةً بالسابق
ينتقل استوديو Android إلى وتيرة إصدار ثابتة شهرية لتسريع حصولك على الميزات الجديدة وإصلاح الأخطاء البالغة الأهمية. مع أنّ بيئة التطوير المتكاملة (IDE) في "استوديو Android" سيتم تحديثها شهريًا، سيتم طرح إصدارات جديدة من منصة IntelliJ كل بضعة أشهر، وستتضمّن التحديثات المؤقتة إصدارات ثابتة. سيستمر تحديث "محاكي Android" و"المكوّن الإضافي لنظام Gradle المتوافق مع Android" بشكل منفصل كل شهرين. يستند هذا الجدول الزمني السريع للإصدارات إلى استثمارات طويلة الأجل في البنية الأساسية للاختبار.
الميزات الجديدة في إصدار أغسطس 2025 من Jetpack Compose 🚀
أصبح إصدار Jetpack Compose لشهر آب (أغسطس) 2025 (الإصدار 1.9) ثابتًا الآن. يقدّم هذا الإصدار Modifier.dropShadow وModifier.innerShadow لعرض تأثيرات box-shadow. يتيح لك المعدّلان الجديدان onVisibilityChanged وonFirstVisible تتبُّع مستوى ظهور العناصر لتعديلات واجهة المستخدم أو تسجيل مرّات الظهور. يمكنك تطبيق تنسيق غني ضمن OutputTransformation باستخدام TextFieldBuffer.addStyle لتحويلات النصوص.
أصبحت الآن اللبنات الأساسية LazyLayout ثابتة، ويمكنك تحديد LazyLayoutCacheWindow لتحسين أداء Lazy List وGrid من خلال جلب البيانات المسبق المحسّن. تتيح السمة Scrollable2D التنقّل في صفحة ثنائية الأبعاد، بما في ذلك التنقّل السريع والتنقّل المتداخل، مع تحسينات مختلفة للتوافق بين التنقّل والتنقّل المتداخل مع "طرق العرض". توفّر واجهة برمجة تطبيقات تتطلّب الموافقة (Composer.setDiagnosticStackTraceEnabled) تفاصيل أكثر دقة عن موقع الأعطال في عمليات تتبُّع تسلسل استدعاء الدوال البرمجية، ويُنصح باستخدامها فقط في إصدارات تصحيح الأخطاء. تتوفّر التعليقات التوضيحية الجديدة @RememberInComposition و@FrequentlyChangingValue، بالإضافة إلى عمليات فحص Lint المرتبطة بها، في مكتبة جديدة للتعليقات التوضيحية في وقت التشغيل. يمكن تخصيص قوائم السياق باستخدام Modifier.appendTextContextMenuComponents وModifier.filterTextContextMenuComponents. يجب الآن استخدام الإصدار 8.8.2 أو إصدار أحدث من المكوّن الإضافي لنظام Gradle المتوافق مع Android (AGP) / أداة Lint.
Media3 1.8.0 — الميزات الجديدة 🚀
يتوفّر الآن الإصدار 1.8.0 من Media3، ويتضمّن العديد من الميزات والتحسينات الجديدة. تتضمّن ExoPlayer وضعًا للتقديم السريع والترجيع السريع لعمليات البحث المتكررة التي يجريها المستخدم، ويمكنك تفعيله من خلال ExoPlayer.setScrubbingModeEnabled. تتيح HlsInterstitialsAdsLoader الآن إمكانية البث المباشر لإدراج الإعلانات الموجّهة من الخادم.
تم تعديل MetadataRetriever للسماح لك باسترداد مدة عناصر الوسائط بدون تشغيلها. بالنسبة إلى Transformer، يقدّم الإصدار عمليات قص أسرع باستخدام قوائم تعديل MP4 مع experimentalSetMp4EditListTrimEnabled وتحسينات برنامج الترميز الخاصة بمجموعة الشرائح من خلال CodecDbLite، ويتم تفعيلها من خلال استدعاء setEnableCodecDbLite على DefaultEncoderFactory.Builder.
تشمل التحديثات الإضافية إتاحة التنزيل الجزئي في Downloader باستخدام PreCacheHelper، والتوجيه التلقائي لصوت الواقع الممتد في ExoPlayer، وتفاعلات أكثر فعالية مع MediaCodec. يُبقي وحدة MediaSession النمطية الإشعارات مرئية لفترة أطول تلقائيًا، ويعرض تطبيق MediaSession التجريبي وظيفة استئناف التشغيل. يعرض تطبيق تجريبي جديد لـ Composition، تم إنشاؤه باستخدام Kotlin وCompose، إمكانات متقدّمة لتعديل الفيديوهات التي تتضمّن عدة مواد عرض.
مقالات 📚
#WeArePlay: ندعوك للتعرّف على المطوّرين الذين يساهمون في بناء عالم أكثر استدامة
تسلط مبادرة #WeArePlay الضوء على تطبيقات وألعاب Android التي تتناول التحديات البيئية. توفّر لعبة BoRa — Iguaçu National Park، التي طوّرها كل من "مايلا" و"فلافيا" و"أندريا" و"أريان"، تجارب تفاعلية مسلّية وسهلة الاستخدام للتعليم عن الطبيعة أثناء زيارة المتنزّه. يتيح تطبيق CyberTracker الذي صمّمه لويس وجوستين لمتتبّعي السكان الأصليين غير المتعلمين تسجيل بيانات التنوع البيولوجي من خلال واجهة مستندة إلى الرموز، ما يدعم جهود الحفاظ على البيئة. أخيرًا، تقدّم مؤسسة Earth5R، التي شارك في تأسيسها كل من بهاراتي وسوراب، تعليمًا بيئيًا وتتيح للمستخدمين فرص تدريب ومشاريع لتطوير مهاراتهم في مجال الاقتصاد الأخضر.
ما هي ميزة HDR؟ 🌟
تتيح تكنولوجيا النطاق العالي الديناميكية (HDR) للمطوّرين على Android زيادة مستوى السطوع الأقصى إلى ما يتجاوز النطاق الديناميكي العادي (SDR)، ما يوفّر دقة بصرية محسّنة. يتوافق Android مع تقنية HDR للفيديوهات والصور، بما في ذلك تقنيات مثل UltraHDR لتحقيق التوافق مع الأنظمة القديمة.
يتضمّن فهم الألوان ثلاثة عناصر:
- عمق البت: يحدّد دقة تمثيل الألوان، وكلما زاد العمق، كانت الانتقالات أكثر سلاسة.
- دالة النقل: تربط قيم البكسل الرقمية بالسطوع أو اللون المعروضَين، مع تعديل الاستجابة المرئية غير الخطية للإنسان. تشمل الأمثلة sRGB وHLG وPQ.
- سلسلة الألوان: تمثّل نطاق الألوان التي يمكن للجهاز إعادة إنتاجها.
المفاهيم الخاطئة الشائعة حول النطاق العالي الديناميكية:
- الألوان الزاهية: كانت نطاقات الألوان الأوسع، مثل Display P3 وAdobe RGB، متاحة قبل تكنولوجيا HDR، ولا تزال معظم الشاشات تقتصر على P3، حتى مع محتوى BT.2020.
- تباين أكبر/تفاصيل أفضل في الأجزاء الداكنة: لا توفّر تقنية HDR بشكل أساسي أجزاء داكنة أكثر من تقنية SDR على الشاشة نفسها. توفّر شاشات OLED تباينًا لا نهائيًا لكليهما. على الرغم من أنّ PQ تخصّص عددًا أكبر من وحدات البت للمناطق الداكنة، إلا أنّها ليست ميزة HDR عالمية.
- عمق البتات الأعلى: على الرغم من أنّ بعض ملفات الفيديو بنطاق HDR (مثل HDR10) تستخدم عمليات بث 10 أو 12 بت، إلا أنّ ذلك يخصّ هذه الملفات ولا يرتبط بشكل أساسي بنطاق HDR نفسه، كما أنّ عمق البتات الأعلى شائع أيضًا في تنسيقات التصوير الأخرى.
تشير تكنولوجيا HDR بشكل أساسي إلى أعلى درجة سطوع. يتم تعريف "مساحة HDR" هذه على أنّها منطقة متغيرة بالنسبة إلى SDR. في حين أنّ فيديوهات HDR التقليدية غالبًا ما تشفّر مساحة ثابتة للرأس، تستخدم الشاشات الحديثة مساحة رأس ديناميكية، ما قد يؤدي إلى اختلافات في الجودة. توفّر تكنولوجيات، مثل دقة HDR فائقة وgainmaps، بدائل تستخدم وحدات البت بكفاءة. تستفيد مجموعة أدوات واجهة المستخدم في Android من واجهة برمجة التطبيقات extendedRangeBrightness لتقديم تجارب HDR، حتى مع RGBA_8888.
الفيديوهات 📹
العناصر المشترَكة المتقدّمة مع تغيير الشكل | نصائح حول Jetpack Compose
تتيح Jetpack Compose الآن عمليات انتقال متقدّمة للعناصر المشترَكة، وتغييرًا معقّدًا للأشكال، وعمليات تحريك عند الكشف عن العناصر. يمكن للمطوّرين ضبط SharedTransitionLayout على مستوى التطبيق الأعلى واستخدام Modifier.sharedBounds لربط العناصر.
تغيير شكل العناصر هي ميزة جديدة رئيسية تم تحقيقها من خلال الاستفادة من مكتبة أشكال الرسومات AndroidX في Material 3. يتضمّن ذلك إنشاء عنصر Morph بأشكال بداية ونهاية محدّدة، وتحديد مستوى تقدّمه باستخدام animateFloat (من AnimatedVisibilityScope)، وتطبيقه كمقطع من خلال OverlayClip مخصّص. تستخدم تأثيرات الكشف skipToLookaheadSize وskipToLookaheadPosition. تتوافق جميع هذه الصور المتحركة المتقدّمة أيضًا مع إيماءات الرجوع التنبؤية.
Gemini متعدد الوسائط في "استوديو Android": تطوير واجهات المستخدم المستنِد إلى الذكاء الاصطناعي
يساعد الذكاء الاصطناعي من Gemini في "استوديو Android" في تطوير واجهة المستخدم من خلال إنشاء رموز برمجية من التصاميم (بما في ذلك تحويل الصور إلى رموز برمجية)، وإنشاء "معاينات Compose" باستخدام بيانات اصطناعية، وتحسين واجهة المستخدم الحالية من خلال الأوامر المباشرة.
استخدام حزمة SDK يتم تفعيلها في وقت التشغيل
يتضمّن نظام التشغيل Android 14 وقت تشغيل حزمة تطوير البرامج (SDK)، وهي تقنية جديدة تعمل على عزل حِزم SDK التابعة لجهات خارجية في بيئة آمنة ومنفصلة لتوفير حماية أفضل للخصوصية والأمان.
للمطوّرين:
- يتم تنفيذ حِزم SDK المفعَّلة أثناء التشغيل (RE) في هذه العملية المنفصلة.
- تعمل حِزم تطوير البرامج (SDK) المتوافقة مع وقت التشغيل كوسيط داخل تطبيقك.
- حمِّل حِزم تطوير البرامج (SDK) الخاصة بـ RE باستخدام
SdkSandboxManagerCompat، مع مراعاة القيود (مثل التشغيل في المقدّمة والتحميل الفردي). - تسهّل أدوات Shim الاتصال المنخفض المستوى بين العمليات.
- عرض واجهة المستخدم من حِزم SDK الخاصة بـ "الواقع المعزّز" باستخدام
SandboxedSdkViewوSandboxedUiAdapter - يمكنك تشغيل الأنشطة من "وقت تشغيل حزمة تطوير البرامج (SDK)" باستخدام
SdkActivityLauncher.
تغيير شكل عناصر Material 3 في WearOS | نصائح حول Jetpack Compose
تسهّل Wear OS Material 3 for Compose الآن عملية تحويل الأشكال. يمكن للمطوّرين بسهولة إضافة تغييرات على الأشكال المتحركة إلى الأزرار الدائرية باستخدام IconButtonDefaults.animatedShapes، وإنشاء مجموعات أزرار تحرّك تغييرات العرض باستخدام المكوّن ButtonGroup وModifier.animateWidth()، وإنشاء قوائم قابلة للتمرير عموديًا (TransformingLazyColumn) حيث يتم تغيير حجم العناصر وشكلها باستخدام TransformationSpec عند اقترابها من حواف الشاشة.
إصدارات AndroidX 🚀
في ما يلي ملخّص للتغييرات في AndroidX، مع إعطاء الأولوية للتغييرات الأكثر صلةً بمطوّري تطبيقات Android:
التغيير المؤثّر العام في مكتبات Compose:
- تمت زيادة
minSdkالتلقائي إلى المستوى 23 من واجهة برمجة التطبيقات: بالنسبة إلىandroidx.composeوanimationوfoundationوmaterialوruntimeوui، تم نقل الحد الأدنى التلقائي لإصدار حزمة تطوير البرامج (SDK) من المستوى 21 من واجهة برمجة التطبيقات إلى المستوى 23. وهذا يعني أنّه في حال استخدام أحدث إصدارات ألفا من مكتبات Compose هذه، سيتطلب تطبيقك ضِمنيًا الإصدار 6.0 (Marshmallow) من نظام التشغيل Android أو إصدارًا أحدث.
أهم التغييرات لمطوّري Compose:
- واجهة برمجة تطبيقات جديدة للاحتفاظ بالبيانات (Compose Runtime): تقدّم واجهة برمجة تطبيقات للاحتفاظ بالبيانات مشابهة لواجهة
rememberSaveable، ولكن للقيم التي تخرج من التسلسل الهرمي للتركيب بدون تسلسل. تكون مدة صلاحيتها أقصر من القيم المحفوظة وتتصرّف بشكل مشابهViewModel، ما يوفّر طريقة جديدة لإدارة الحالة للعناصر القابلة للإنشاء التي قد يتم إضافتها إلى التركيب وإزالتها منه. - عمليات الانتقال المحسّنة للعناصر المشترَكة (الرسوم المتحركة وواجهة المستخدم في Compose): واجهات برمجة تطبيقات جديدة لتفعيل العناصر المشترَكة أو إيقافها ديناميكيًا، وتحديد حدود بديلة للعنصر المستهدَف عند التخلص من عنصر مشترَك، وتتبُّع عمليات الانتقال الجارية. يتوفّر أيضًا
Modifier.skipToLookaheadPositionجديد لتثبيت التنسيقات. - تحسين ميزة "الجلب المسبق لبيانات أداة Pager" (إطار عمل Compose): تستخدم استراتيجية الجلب المسبق لبيانات أداة Pager الآن "نافذة ذاكرة تخزين مؤقت" (بحجم مساحة عرض واحدة) بدلاً من عنصر واحد، ويتم تفعيل ميزة الجلب المسبق الأوّلي تلقائيًا. يتم أيضًا الاحتفاظ بالعناصر لفترة أطول لتسهيل التنقّل.
- تحسين معالجة التركيز للماوس أو لوحة اللمس (Compose Foundation & UI): ستتم الآن إزالة التركيز تلقائيًا عند وقوع حدث مؤشر لأسفل (من الماوس أو لوحة اللمس) خارج العقدة التي تم التركيز عليها.
ComposeViewsيمكنك إيقاف هذا الخيار. - مستطيلات التركيز القابلة للتخصيص (Compose Foundation): يتيح لك الإصدار
FocusPropertiesالآن تحديد منطقة تركيز مخصّصة بدلاً من استخدام مربّع الإحاطة تلقائيًا، ما يحسّن عملية التنقّل بين عناصر التركيز ومنطق "إبقاء العنصر في إطار العرض" في الحاويات القابلة للتمرير. - LifecycleOwner Composable (Lifecycle): يتيح عنصر قابل للإنشاء جديد إنشاء مثيلات
LifecycleOwnerذات نطاق مباشرةً في شجرة واجهة المستخدم. ويفيد ذلك بشكل خاص في إدارة دورات حياة المكوّنات بشكل مستقل، وفي المكتبات مثل Navigation. - إتاحة الأنواع التي يمكن أن تقبل القيم الفارغة في
SavedStateHandle(LifecycleوSavedState): تم تسهيل حفظ واستعادة الخصائص القابلة لأن تكون فارغة من خلال إتاحة هذه الأنواع فيSavedStateHandleوSavedStateRegistryOwner. LineHeightStyle.Mode.Tight(Compose Foundation & UI): يساعد الوضع "مضبوط" الجديد في فرض ارتفاعات أصغر للأسطر، حتى لو كان ذلك يعني إمكانية قطع الحروف الرسومية الأطول، ما يوفّر تحكّمًا أكثر دقة في تنسيق النص.- النقر مرّتين لتحديد كلمة (Compose Foundation): تمت إضافة إمكانية النقر مرّتين لتحديد الكلمات في
SelectionContainerوBasicTextField. - تغييرات في سلوك WindowInsets (واجهة مستخدم Compose وFoundation):
◦ واجهة برمجة تطبيقاتWindowInsets.cutoutPathجديدة للحصول على مسار صورة مقطوعة للشاشة.
◦ تمت إزالة العلامةisWindowInsetsDefaultPassThroughEnabled، وتم ضبط القيمة التلقائيةWindowInsetsعلى عدم الاستهلاك تلقائيًا، ما يسمح لعناصر العرض الثانوية بتلقّيها. AndroidViewrequestRectangleOnScreenإصلاح (Compose Foundation): يتم الآن نقل الطلبات التي تقدّمها AndroidViews (مثلEditTextالتي تحاول البقاء على الشاشة) بشكل صحيح إلى Compose.- تحسين التمرير باستخدام عجلة الماوس ثنائية الأبعاد (Compose Foundation & UI): تحسين إمكانية التعامل مع أحداث التمرير باستخدام عجلة الماوس ثنائية الأبعاد، مع توفير واجهات برمجة تطبيقات جديدة للاختبار وعلامة للتحكّم في السلوك
المكتبات والأدوات المساعدة الجديدة:
-
androidx.core:core-backported-fixes(مكتبة جديدة): تتيح هذه المكتبة الجديدة للمطوّرين التحقّق مما إذا تم تطبيق إصلاحات الأخطاء الحرجة (مثل المشاكل على مستوى النظام الأساسي، مثل أخطاء معيّنة في الكاميرا) على أحد الأجهزة. ويتيح ذلك تقديم تجارب مختلفة للمستخدمين استنادًا إلى ما إذا تم حلّ خطأ معروف أم لا.
تغييرات أخرى جديرة بالذكر:
- نشاط الألعاب والإدخال: تمت إضافة دعم تلقائي لأحجام الصفحات البالغة 16 كيلوبايت ودعم الماوس في
GameActivity. - تحديد موضع تلميحات Material3: توفير المزيد من أدوات تحديد موضع التلميحات، ما يتيح وضعها أعلى أو أسفل أو يمين أو يسار العنصر الأساسي
- Material3
DatePickerالإصلاحات: يضمن هذا الإصدار أنّ أداة اختيار التاريخ تستخدم اللغة الخاصة بها لتنسيق الأرقام، كما يحلّ مشاكل العرض من اليمين إلى اليسار. - إتاحة display_override في تطبيقات الويب المستضافة (المتصفّح): تمت إضافة إمكانية استخدام خاصية بيان
display_overrideفي تطبيقات الويب المستضافة، ما يتيح المزيد من التحكّم في طريقة عرض تطبيقات الويب المستضافة. - فتح عنوان URL الأوّلي في تطبيق خارجي (المتصفّح): تمت إضافة Intent للسماح بفتح عنوان URL الأوّلي لتطبيق الويب التوافقي في متصفّح خارجي.
Android Developers Backstage
عدنا إليكم بحلقة جديدة من برنامج Android Developers Backstage.
الملء التلقائي في Compose
يقدّم الإصدار 1.8 من Jetpack Compose إمكانات محسّنة بشكلٍ كبير لميزة "الملء التلقائي"، وذلك من خلال الاستفادة من نظام الدلالات في Compose. يمكن للمطوّرين الآن دمج ميزة "التعبئة التلقائية" على مستوى النظام بسهولة من خلال وضع علامات على حقول النص باستخدام دلالات نوع المحتوى ذات الصلة (مثل اسم المستخدم وكلمة المرور)، ما يلغي الحاجة إلى إدارة شجرة "التعبئة التلقائية" يدويًا ويحسّن الأداء.
حسنًا، لنبدأ… 👋
هذا كل ما لدينا في هذا العدد، حيث تضمّن تغطية للإصدار التجريبي الأول من Android 16 QPR2 وميزة استوديو Android Narwhal وJetpack Compose 1.9 وMedia 3 1.8 وShape Morphing والملء التلقائي في Compose وغير ذلك الكثير.
يُرجى التحقّق مرة أخرى قريبًا لمعرفة آخر الأخبار من عالم مطوّري تطبيقات Android.
-
المنتدىأعلن Android مؤخرًا عن ميزة "التحقّق من هوية المطوِّر"، وهي طبقة أمان إضافية تردع الجهات المسيئة وتصعّب عليها نشر المحتوى الضار.
Matthew Forsythe • مدّة القراءة: دقيقتان -
المنتدىيُطلق Google Play صندوق Indie Games Fund الأول في أفريقيا، ويستثمر مليون دولار أمريكي لتمكين 10 استوديوهات ألعاب مستقلة في جميع أنحاء أفريقيا جنوب الصحراء الكبرى.
Steph Pio • يستغرق الاطّلاع على المقال دقيقة واحدة -
المنتدىحانت اللحظة المنتظرة. يسرّنا الإعلان عن قائمة المشاركين في برنامج "مسرّع تطبيقات Google Play" لعام 2026.
Robbie McLachlan • يستغرق الاطّلاع على المقال دقيقة واحدة
يمكنك تلقّي أحدث الإحصاءات حول تطوير تطبيقات Android في بريدك الوارد أسبوعيًا.