تلخِّص هذه الصفحة الميزات الرئيسية في إصدار Android 10، وتوفّر روابط تؤدي إلى معلومات إضافية. يتم تنظيم ملخّصات الميزات هذه وفقًا لمكان مستندات الميزة على هذا الموقع الإلكتروني.
إنشاء
java_sdk_library
يقدّم نظام التشغيل Android 10 java_sdk_library
، وهي قاعدة جديدة لإنشاء التطبيقات بهدف حلّ مشاكل التوافق في مكتبات Java المشتركة. يمكن لصنّاع الأجهزة استخدام هذه الآلية لمكتبات Java المشتركة الخاصة بهم للحفاظ على التوافق مع الإصدارات السابقة لواجهات برمجة التطبيقات.
هندسة معمارية
مكونات النظام المُعَدَّة للتركيب
يعمل نظام التشغيل Android 10 على تجميع بعض مكونات نظام Android في وحدات، ما يتيح تحديثها خارج دورة إصدار Android العادية. تشمل بعض الوحدات ما يلي:
- Android Runtime
- Conscrypt
- برنامج تعيين نظام أسماء النطاقات
- DocumentsUI
- ExtServices
- الوسائط
- ModuleMetadata
- التواصل
- PermissionController
- بيانات المنطقة الزمنية
طبقة تجريد الأجهزة (HAL)
يضيف نظام التشغيل Android 10 إمكانية إيقاف واجهات HAL تلقائيًا عندما لا يكون لديها عملاء.
فرقعة
ABI
يتضمّن نظام التشغيل Android 10 أدوات جديدة لمراقبة ABI للمساعدة في مقارنة التغييرات في ABI الخاصة بالنواة وتتبُّعها والحدّ من تأثيرها على التوافق مع وحدات النواة.
يقدّم نظام Android 10 أيضًا أداة التحقّق من استخدامات ABI المستندة إلى الرموز. يمكن لأداة التحقّق اكتشاف الملفات الثنائية المُسبقة الإنشاء القديمة في وقت الإنشاء، حتى يتمكّن مطوّرو المكتبة المشترَكة من معرفة الملفات الثنائية المُسبقة الإنشاء التي قد تتعطّل بسبب التغييرات التي أجروها وملفاتها التي يجب إعادة إنشائها.
برنامج Android Live-Lock Daemon
يتضمّن نظام التشغيل Android 10 المعالج المهام Android Live-Lock Daemon (llkd)، وهو مصمّم لرصد حالات التوقف المفاجئ لنظام التشغيل والحدّ منها.
vDSO32 على ARM64
يتيح نظام التشغيل Android 10 استخدام vDSO32 على نواة 64 بت، ما يؤدي إلى زيادة عمر البطارية بنسبة 0.4% وتحسينات أخرى على الأداء.
إدخالات fstab للأقسام المثبَّتة في وقت مبكر
يتطلّب نظام التشغيل Android 10 من الأجهزة تحديد إدخالات fstab
للأقسام التي تم تركيبها في مرحلة مبكرة
باستخدام ملف fstab
في ذاكرة الوصول العشوائي (RAM) في المرحلة الأولى.
HIDL
تفريغ BroadcastQueue
يتضمّن نظام Android 10 ميزة تخفيف الحمل جديدة BroadcastQueue
في قوائم الانتظار الحالية في الخلفية وفي المقدّمة. تتمتع قائمة الانتظار لتفريغ الذاكرة
بأولوية ووقت انتظار مماثلَين لقائمة الانتظار في الخلفية. لمنع
حظر "قائمة البث في الخلفية" التي يمكن أن تحدث فيها عمليات بث
أكثر إثارة للاهتمام أو مرئية للمستخدم، تعالج "قائمة البث في الخلفية" عملية BOOT_COMPLETED
البث التي تستمع إليها العديد من التطبيقات ويمكن أن تستغرق وقتًا طويلاً لإكمالها.
لا تتعامل قائمة الانتظار الحالية لنقل البيانات إلا مع أحداث البث التي تبلغ مدتها BOOT_COMPLETED
، ولكن
يمكن أن تتعامل مع أحداث البث الطويلة الأخرى.
خدمة SystemSuspend
يستبدل نظام Android 10 سلسلة المحادثات في libsuspend
المُستخدَمة لبدء تعليق النظام ب
خدمة SystemSuspend HIDL. يوفّر هذا التكامل وظائف مماثلة للإصدارات السابقة مع الاستفادة من مزايا بنية Android HIDL الأساسية.
safe_union في HIDL
يقدّم نظام التشغيل Android 10 safe_union
، وهو نوع موحّد تم وضع علامة عليه صراحةً، في HIDL.
الإعدادات
واجهة برمجة التطبيقات لـ ConfigStore
يوقف نظام التشغيل Android 10 واجهة برمجة التطبيقات ConfigStore HAL نهائيًا بسبب ارتفاع استهلاك الذاكرة وصعوبة الاستخدام، ويستبدل واجهة برمجة التطبيقات هذه بخصائص النظام.
Config File Schema API
يحتوي نظام Android الأساسي على عدد كبير من ملفات XML لتخزين بيانات الإعدادات. تتوفّر العديد من ملفات XML في القسم vendor
، ولكن يتم قراءتها في
القسم system
. في هذه الحالة، يعمل مخطّط ملف XML كأحد
الواجهات بين القسمَين، وبالتالي يجب تحديد المخطّط
بوضوح وتطويره بطريقة متوافقة مع الإصدارات القديمة. قبل الإصدار
Android 10، لم توفّر المنصة آليات لتحديد مخطّط XML واستخدامه أو لمنع التغييرات غير المتوافقة
في المخطّط. يقدّم نظام التشغيل Android 10 هذه الآلية، ويُطلق عليها اسم واجهة برمجة التطبيقات Config File Schema API.
خصائص النظام كواجهات برمجة تطبيقات
يتم تخطيط خصائص النظام التي يتم الوصول إليها في
الأقسام إلى ملفات وصف sysprop
، ويتم إنشاء واجهات برمجة التطبيقات للوصول إلى
الخصائص كوظائف محدّدة للغة C++ وطبقات للغة Java.
عنصر واجهة المورّد (VINTF)
VINTF
تشمل التغييرات التي طرأت على VINTF في Android 10 ما يلي:
- إيقاف علامات إصدار AVB نهائيًا
- إضافة معلومات عن النواة في حِزم OTA
- إنشاء ملفات بيان ODM رسميًا
- إضافة مصفوفة توافق المنتجات
- ربط إدخال بيان بالوحدة HAL في نظام الإنشاء
برنامج الإقلاع
ذاكرة الوصول العشوائي
في Android 10،
لم يعُد
نظام ملفات الجذر مضمّنًا في ramdisk.img
، بل تم دمجه في system.img
بدلاً من ذلك.
إنشاء أقسام قياس الإحالات الناجحة على الجهاز فقط
يتيح نظام التشغيل Android 10 إمكانية
إنشاء odm
أقسام
باستخدام نظام إنشاء Android. يمكنك استخدام قسم /odm
منفصل لعمليات
التخصيص، ما يتيح لك استخدام صورة مورّد واحدة لعدة
رموز تخزين تعريفي للأجهزة. يتيح ذلك لصنّاع التصميم الأصلي (ODM) تخصيص حزم دعم لوحات مورّدي المنظومة على الرقاقة (SoC) لتناسب
أجهزتهم (لوحاتهم) المحدّدة. ويمكنهم تنفيذ وحدات kernel للمكونات الخاصة باللوحة أو الخدمات الدائمة الخاصة باللوحة أو ميزاتهم الخاصة على مستويات abstraction hardware (HAL). وقد يستبدلون أيضًا مكونات شريحة المعالجة المُدمجة أو يخصّصونها.
إصدارات عناوين صور التشغيل
يُعدِّل نظام التشغيل Android 10 عنوان صورة التمهيد إلى الإصدار 2، الذي يتضمّن قسمًا لتخزين صورة ملف الجهاز (DTB). تتحقّق اختبارات فحص سلامة السلسلة من القيم (VTS) لنظام التشغيل Android 10 من أنّ جميع الأجهزة التي تعمل بالإصدار Android 10 تستخدم الإصدار 2 من عنوان صورة التمهيد وتتضمّن صورة DTB صالحة كجزء من صور التمهيد/الاسترداد.
صور الاسترداد لأجهزة غير مزوّدة بميزة A/B
في الإصدار 9 من نظام التشغيل Android والإصدارات الأحدث، يجب أن تحتوي صورة الاسترداد الخاصة بالجهاز على معلومات من الصورة التي تظهر على سطح الشاشة. يمكن لصنّاع الأجهزة استخدام DeviceTree أو Advanced Configuration and Power Interface (ACPI) لوصف جميع الأجهزة غير القابلة للاكتشاف. يتضمّن الإصدار 10 من Android والإصدارات الأحدث التوافق مع التصاميم التي تستخدم ACPI بدلاً من ملف DeviceTree blob للتراكب (DTBO).
لغة تعريف واجهة نظام Android الثابتة
يضيف نظام التشغيل Android 10 لغة تعريف واجهة Android (AIDL) الثابتة، وهي طريقة جديدة لتتبُّع واجهة برمجة التطبيقات (API)/واجهة التطبيق المبرمَجة (ABI) التي تقدّمها واجهات AIDL.
نقل Fastboot إلى مساحة المستخدم
يتيح نظام Android 10 استخدام أقسام قابلة لإعادة الحجم من خلال إعادة تحديد موقع تنفيذ Fastboot من محمل التمهيد إلى مساحة المستخدم.
الشاشة
تشغيل فيديوهات بتنسيق HDR
يتيح نظام التشغيل Android 10 تشغيل الفيديوهات بتقنية HDR10 وVP9 وHDR10+.
تصنيف النصوص
تستخدِم ميزة تصنيف النصوص أساليب تعلُّم الآلة لمساعدة المطوّرين في تصنيف النصوص. يقدّم الإصدار Android
10 طريقتَين لواجهة برمجة التطبيقات TextClassifier API:
suggestConversationActions
وdetectLanguage
.
تُنشئ الطريقة suggestConversationActions
الردود والإجراءات المقترَحة
من محادثة معيّنة، وترصد الطريقة detectLanguage
لغة
النص.
إتاحة عرض خط Zawgyi
زاوغي هو الخط الأكثر رواجًا في ميانمار. لا يتيح الإصدار 9 من نظام التشغيل Android والإصدارات الأقدم عرض محتوى بخط زاوغي لأنّه غير متوافق مع Unicode. يعالج الإصدار 10 من Android هذه المشكلة من خلال تضمين خط يونيكود قادر على عرض كل من يونيكود البورمية وZawgyi معًا. ما مِن إجراءات تنفيذ مطلوبة لتفعيل عرض خط Zawgyi على الأجهزة التي تعمل بالإصدار Android 10. إذا كانت أجهزتك تتضمّن ميزة تنفيذ مخصّصة تتيح استخدام الخط Zawgyi، يمكنك إجراء ما يلي:
- يمكنك التراجع عن هذه التغييرات واستخدام الطريقة المتوافقة مع المنصة.
- احتفظ بخط Zawgyi الشائع في نظامك واستخدِم رمز اللغة
my-qaag
فيfonts.xml
. لمزيد من المعلومات، يُرجى الاطّلاع على ملاحظات إصدار Unicode CLDR حول Zawgyi (Qaag).
قيود على إخفاء رموز التطبيقات
يحدّ نظام التشغيل Android 10 من قدرة التطبيقات على إخفاء رموز مشغّل التطبيقات. إذا لم يكن أحد التطبيقات يتضمّن نشاطًا مفعّلاً في مشغّل التطبيقات، يُعرِض النظام نشاطًا مجمّعًا في مشغّل التطبيقات، ويمثّل هذا النشاط المجمّع صفحة تفاصيل التطبيق ضمن إعدادات النظام.
لمزيد من المعلومات حول المنطق المستخدَم لعرض رموز التطبيقات، بما في ذلك أنواع
التطبيقات التي لا يتم عرض رموزها، يمكنك الاطّلاع على مستندات
getActivityList()
في مرجع واجهة برمجة التطبيقات.
الإعدادات
لتحسين تسهيل الاستخدام، يتضمّن نظام التشغيل Android 10 إعدادات مهلة يمكن للمستخدم تخصيصها. تأتي التغييرات في واجهة برمجة التطبيقات والإعدادات مع Android 10. إذا كنت قد خصّصت إعداداتك، تأكَّد من توفّر هذه الميزة. إذا كانت لديك عناصر واجهة مستخدم تنتهي مهلة تنفيذها على جهازك، استخدِم واجهة برمجة التطبيقات timeouts API في هذه العناصر. لمزيد من المعلومات، يُرجى الاطّلاع على إرشادات تسهيل الاستخدام لمطوّري تطبيقات Android.
التوافق
مستند تعريف التوافق مع Android (CDD)
يعيد مستند تعريف التوافق مع Android 10 تحديث الإصدارات السابقة من خلال إضافة تعديلات على الميزات الجديدة وتغيير متطلبات الوظائف التي تم إصدارها سابقًا.
الاختبارات
مجموعة أدوات اختبار التوافق (CTS)
يتضمّن Android CTS صفحة ملاحظات إصدار منفصلة تسرد العديد من التغييرات المهمة في الإصدار 10 من Android.
عمليات تنزيل مجموعة أدوات اختبار التوافق (CTS)
تتوفّر حِزم CTS المتوافقة مع Android 10 في صفحة
عمليات تنزيل حِزم CTS. يمكن مزامنة رمز المصدر لاختبارات
المضمّنة باستخدام العلامة android-cts-10_r1
في ملف رمز المصدر لملف
الترميز المفتوح.
CTS shim APEX
يقدّم نظام التشغيل Android 10 حزمة باسم CtsShimApex
،
يجب تثبيتها مسبقًا على الجهاز لكتابة اختبارات CTS لإدارة APEX.
وضع مفعِّل الاختبار
يساعد وضع حِزم اختبار CTS المطوّرين في أتمتة اختبار جهاز أو مجموعة من الأجهزة.
وضع "التطبيقات الفورية"
بدءًا من Android 10، يتم تشغيل CTS في وضع التطبيقات الفورية، ما يعني تثبيت ملف APK الاختباري كتطبيق فوري وإجراء الاختبارات.
بالإضافة إلى وضع CTS لتطبيقات Android الفورية، يحتوي الإصدار 10 من Android على أداة التحقّق من CTS لتطبيقات Android الفورية.
اختبار الصوت في أداة CTS Verifier Pro
يضيف نظام التشغيل Android 10 اختبار CTS Verifier لالامتثال لمعايير Pro Audio.
اختبارات CTS Verifier MIDI
في Android 10، يختبر اختبار MIDI في أداة التحقّق من توافق الأجهزة (CTS) وظائف MIDI باستخدام واجهات MIDI عبر USB وواجهات MIDI عبر البلوتوث ومسار جهاز MIDI افتراضي.
تفسير اختبار CTS
يُعدّل نظام التشغيل Android 10 آلية تفسير نتائج مجموعة أدوات اختبار التوافق (CTS).
مجموعة اختبار المورّد (VTS)
اختبار VTS باستخدام ذاكرة الوصول العشوائي (RAM) لتصحيح الأخطاء
في Android 10، تم تغيير نوع صورة النظام العامة (GSI) المستخدَمة لاختبار امتثال CTS على GSI/VTS من userdebug إلى نوع الإصدار user،
لأنّ صورة النظام العامة (GSI) موقَّعة. ومع ذلك، لا يتوفّر الأمر adb root
الذي يمنح مضيفًا
أذونات الجذر لجهاز Android الذي يخضع للاختبار في إصدار
مستخدم. هذه مشكلة لأنّ ميزة VTS تتطلّب تشغيل adb root
.
تم تقديم ملف ramdisk لتصحيح الأخطاء لتمكين
adb root
، في حال كان الجهاز غير مقفل. ويؤدي ذلك إلى تبسيط عملية الاختبار
من خلال إعادة استخدام الإصدار المخصّص للمستخدمين system.img
نفسه (إما الإصدار العام للنظام الأساسي أوsystem.img
المصنّع الأصلي للجهاز).
التحقّق من جودة تحويل الصوت إلى نص في "أداة إنشاء المحتوى"
يضيف نظام التشغيل Android 10 فئة اختبار جديدة لفحص الأجهزة باستخدام أداة readback
Composer من خلال واجهة readback
في
IComposerClient.hal
.
إذا لم ينفذ المورّدون readback
، تجتاز الاختبارات تلقائيًا.
تصحيح الأخطاء
تحميل المكتبات المشتركة باستخدام أدوات تحميل فئات مختلفة
في الإصدار 9 من نظام التشغيل Android والإصدارات الأقدم، كانت التطبيقات تحمِّل مكتباتها المشتركة المرتبطة بلغة Java في ملف loading.class
التطبيق. في Android 10، يستخدم الإطار العمل مثبّت فئة مختلفًا عن مثبّت فئة التطبيق لتحميل مكتبات Java المشترَكة التي تم ربطها من خلال uses-library
أو uses-static-library
.
بشكل عام، يجب ألا تعتمد التطبيقات على استخدام أداة تحميل فئة معيّنة، لذا من المفترض ألا يؤدي هذا التغيير إلى إيقاف سلوك التطبيق. ومع ذلك، إذا كان التطبيق يعتمد على استخدام LOADER لصف واحد، يصبح هذا السلوك غير صالح. بالإضافة إلى ذلك، لا تزال إمكانية الوصول إلى الفئات في الحزمة نفسها متوافقة مع مستوى الوصول "خاصة بالحزمة"، ولكنّها غير متوافقة مع المكتبات المشتركة.
قد تواجه الشركات المصنّعة للأجهزة مشاكل في توافق التطبيقات أثناء اختبار أجهزتها التي تعمل بنظام التشغيل Android 10.
ميزات الأمان
للحصول على قائمة أكثر اكتمالاً بالتحسينات المتعلّقة بالأمان والخصوصية فقط، يُرجى الاطّلاع على صفحةتحسينات الأمان والخصوصية في Android 10.
المصادقة بالوجه
تتيح ميزة التعرّف على الوجه للمستخدمين فتح قفل أجهزتهم ببساطة من خلال النظر إلى الجهة الأمامية من أجهزتهم. يضيف Android 10 ميزة جديدة للتعرّف على الوجه يمكنها معالجة لقطات الكاميرا بأمان، ما يحافظ على الأمان والخصوصية أثناء عملية التعرّف على الوجه على الأجهزة المتوافقة. يقدّم نظام Android 10 أيضًا طريقة سهلة لعمليات التنفيذ المتوافقة مع الأمان لتوفير إمكانية دمج التطبيقات في المعاملات، مثل خدمات الصيرفة على الإنترنت أو الخدمات الأخرى.
إمكانية الوصول الموسّع
لا يمكن للوكلاء المعتمَدين، وهم الآلية الأساسية التي تستخدمها آليات مصادقة التابعة لجهة خارجية، مثل Smart Lock، تمديد فتح القفل إلا في الإصدار 10 من Android. لم يعُد بإمكان الوكلاء المعتمَدين فتح قفل جهاز مغلق ولا يمكنهم إبقاء الجهاز مفتوحًا إلا لمدة أربع ساعات كحد أقصى.
التشفير
OEMCrypto
يستخدم الإصدار 10 من نظام التشغيل Android الإصدار 15 من واجهة برمجة التطبيقات OEMCrypto API.
الاختبار
BoundsSanitizer
ينشر نظام التشغيل Android 10 BoundsSanitizer (BoundSan) في البلوتوث وبرامج الترميز. يستخدم BoundSan أداة تعقيم الحدود في UBSan. يتم تفعيل تدابير التخفيف هذه على مستوى كل وحدة. ويساعد هذا الإجراء في الحفاظ على أمان المكوّنات المهمة في Android، وبالتالي لا يُنصح بإيقافه. يتم تفعيل BoundSan في برامج الترميز التالية:
libFLAC
libavcdec
libavcenc
libhevcdec
libmpeg2
libopus
libvpx
libspeexresampler
libvorbisidec
libaac
libxaac
إزالة القيم غير الصالحة من الأعداد الصحيحة
يتيح نظام التشغيل Android 10 استخدام ميزة Integer Overflow Sanitization (IntSan) في برامج الترميز. تأكَّد من أنّ أداء التشغيل مقبول لأي برامج ترميز غير متوافقة مع مكونات الجهاز. يتم تفعيل IntSan في برامج الترميز التالية:
libFLAC
libavcdec
libavcenc
libhevcdec
libmpeg2
libopus
libvpx
libspeexresampler
libvorbisidec
ذاكرة للتنفيذ فقط
يتم تلقائيًا وضع علامة "قابل للتنفيذ فقط (غير قابل للقراءة)" على أقسام الرموز القابلة للتنفيذ لملفّات AArch64 الثنائية كإجراء تخفيف للتحصين من هجمات إعادة استخدام الرموز عند التشغيل. لم تعُد التعليمات البرمجية التي تمزج البيانات والرمز معًا والتعليمات البرمجية التي تفحص هذه الأقسام عمدًا (بدون إعادة ربط أجزاء الذاكرة أولاً على أنّها قابلة للقراءة) تعمل. تتأثر التطبيقات التي تستهدِف الإصدار 10 من حزمة تطوير البرامج (SDK) لنظام التشغيل Android (المستوى 29 من واجهة برمجة التطبيقات أو مستوى أعلى) إذا حاول التطبيق قراءة أقسام الرموز البرمجية لمكتبات النظام التي تم تفعيل ذاكرة التنفيذ فقط (XOM) فيها في الذاكرة بدون وضع علامة على القسم أولاً على أنّه قابل للقراءة.
Scudo
Scudo هو أداة توزيع ذاكرة ديناميكية في وضع المستخدم مصمّمة لتكون أكثر مقاومة للثغرات الأمنية المرتبطة بالمساحة الفارغة. وتوفّر وظائف أساسية لمنح الذاكرة وإلغاء منحها في C، بالإضافة إلى وظائف أساسية في C++.
ShadowCallStack
ShadowCallStack
(SCS) هو أحد أوضاع أدوات LLVM
التي تحمي من عمليات استبدال عنوان الاسترجاع (مثل فائض ملف تخزين الذاكرة في ShadowCallStack
) من خلال حفظ عنوان استرجاع الدالة في مثيل
ShadowCallStack
تم تخصيصه بشكل منفصل في مقدمة الدالة للوظائف غير المنتهيّة
تحميل عنوان الاسترجاع من مثيلShadowCallStack
في نهاية الدالة.
الصوت
Audio HAL
يتضمّن نظام التشغيل Android 10 الإمكانات الجديدة التالية لـ واجهة برمجة التطبيقات لمعالجة الصوت.
AudioSource
AudioFormat
AudioChannelMask
تمّت إضافة متطلبات إضافية لتنفيذ HAL للصوت والنظام الفرعي.
تأثيرات المعالجة المسبقة
يوفّر Android
تأثيرات المعالجة المُسبَقة، مثل
إلغاء الصدى الصوتي والتحكّم التلقائي في مستوى الصوت وكتم الضوضاء.
يتضمّن الإصدار 10 من نظام التشغيل Android متطلبات جديدة لالتقاط الصور باستخدام
VOICE_COMMUNICATION
.
مدير سياسة الصوت
يتضمّن نظام التشغيل Android 10 إعادة هندسة كبيرة لملف برمجي مهم في مدير سياسة الصوت لتوفير المزيد من المرونة لدعم حالات الاستخدام المعقّدة في السيارات.
صوت بدقة عالية
يتضمّن نظام التشغيل Android 10 التحسينات التالية على الصوت العالي الدقة.
- دعم العناصر العائمة
- توافق مع تردد 192 كيلوهرتز
- التوافق مع ثماني قنوات
- تضمين معلومات التوقيت
التسجيل المتزامن
يحسِّن نظام التشغيل Android 10 تجربة مستخدم ميزة التسجيل المتزامن التي تتطلّب تسجيلًا فعالًا لعدة مصادر صوت في الوقت نفسه.
AudioPlaybackCapture
يحتوي نظام التشغيل Android 10 على واجهة برمجة تطبيقات جديدة تُسمى
AudioPlaybackCapture
، والتي تتيح للتطبيقات نسخ الملفات الصوتية التي يتم
تشغيلها من خلال تطبيقات أخرى. تشبه هذه الميزة ميزة "التقاط الشاشة"، ولكنها مخصّصة للصوت.
وحالة الاستخدام الأساسية هي السماح لتطبيقات البث بتسجيل الصوت الذي يتم تشغيله في الألعاب.
لا تؤثّر واجهة برمجة التطبيقات لالتقاط الصوت في وقت استجابة التطبيق الذي يتم تسجيل صوته.
MIDI
يسهِّل نظام التشغيل Android 10 نقل التطبيقات المخصّصة للصوت المهني باستخدام MIDI إلى نظام Android الأساسي باستخدام AMidi
NDK API.
الكاميرا
للحصول على ملخّص للتغييرات التي تم إجراؤها على واجهة برمجة تطبيقات الكاميرا وواجهة HAL للكاميرا ووحدة الكاميرا التي تم تقديمها في Android 10، يُرجى الاطّلاع على تعديلات الكاميرا في Android 10.
تحسينات على خصوصية إطار عمل الكاميرا
يقدّم نظام Android 10 تحسينات على الخصوصية في
إطار عمل الكاميرا. لتجنُّب الكشف عن معلومات كاميرا ثابتة قد تكون حسّاسة في
CameraCharacteristics
بدون موافقة المستخدم، يجب أن تحصل التطبيقات على الإذن
CAMERA
لاسترداد البيانات الوصفية الثابتة باستخدام علامة حسّاسة للخصوصية باستخدام الأسلوب
getCameraCharacteristics
.
للحصول على قائمة بمفاتيح سمات الكاميرا التي تتطلّب إذن CAMERA
، يمكنك استدعاء الأسلوب
getKeysNeedingPermission
.
طلب إعادة ضبط الجلسة
يضيف نظام التشغيل Android 10 ميزة طلب إعادة ضبط الجلسة ، ما يسمح بتحسين الأداء من خلال التحكّم بشكل أكبر في منطق إعادة ضبط مَعلمات الجلسة الداخلية.
واجهات برمجة التطبيقات لإدارة المخزن المؤقت لـ Camera HAL3
يقدّم نظام التشغيل Android 10 واجهات برمجة تطبيقات اختيارية لإدارة ذاكرة التخزين المؤقت في HAL3 للكاميرا تتيح لك تنفيذ منطق إدارة ذاكرة التخزين المؤقت لتحقيق مفاضلات مختلفة في ذاكرة التخزين المؤقت ووقت الاستجابة لالتقاط الصور في عمليات تنفيذ HAL للكاميرا.
مفتاح التحكّم عبر الكاميرا الديناميكي في طبقة HAL للكاميرا
يقدّم الإصدار 10 من Android علامة بيانات وصفية ديناميكية، وهي ANDROID_LOGICAL_MULTI_CAMERA_ACTIVE_PHYSICAL_ID
، والتي تشير إلى الكاميرا الأساسية النشطة لجهاز كاميرا منطقي. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة التوافق مع ميزة "الكاميرات المتعدّدة".
إتاحة إخفاء الكاميرات الفعلية
في نظام التشغيل Android 10، يمكن أن تقلل طبقة HAL للكاميرا من عدد الكاميرات المضمّنة التي يمكن للتطبيق فتحها مباشرةً. لمزيد من التفاصيل، اطّلِع على التوافق مع كاميرات متعددة.
واجهة برمجة تطبيقات Camera2 VNDK
في Android 10، يمكن لوحدات المورّدين الوصول إلى
أجهزة الكاميرا والتحكّم فيها من خلال واجهتَي HIDL العاديتَين الجديدتَين،
android.frameworks.cameraservice.service@2.0
و
android.frameworks.cameraservice.device@2.0
. لتسهيل استخدام واجهات HIDL، يوفّر نظام التشغيل Android 10 مكتبة libcamera2_vendor
المتاحة لدى المورّدين. تتشابه هذه المكتبة مع
مكتبة Camera NDK،
مع إجراء بعض التعديلات البسيطة.
إعدادات البث
يضيف نظام التشغيل Android 10 ميزات تتيح لمورّدي الكاميرات الإعلان عن عمليات بث الكاميرا المقترَحة لعملاء الكاميرا وتوفير واجهة برمجة تطبيقات لطلبات البحث عن مجموعات عمليات البث.
متطلبات دمج بث الكاميرا
لم تعُد الأجهزة التي تعمل بنظام التشغيل Android 10 مطلوبة لتوفير ميزة
دمج عمليات البث مع عمليات بث الكاميرات الفرعية. ومع ذلك، يجب أن تكون الأجهزة التي تعمل بنظام Android 10 وإصدار isStreamCombinationSupported()
من HAL لجهاز الكاميرا متوافقة مع isStreamCombinationSupported()
للسماح للتطبيقات بالاستعلام عما إذا كان من الممكن دمج بث يحتوي على مصادر بث مادي.
لمزيد من المعلومات، يُرجى الاطّلاع على مقالة التوافق مع ميزة "الكاميرات المتعدّدة".
التقاط صور HEIF
يوفر نظام التشغيل Android 10 ميزة استخدام الكاميرا الأصلية لالتقاط صور بتنسيق ملف الصور عالي الكفاءة (HEIF)، ما يؤدي إلى تحسين جودة الصور وجعل حجمها أصغر مقارنةً بصور JPEG. يجب أن تتوفر في الأجهزة برامج ترميز HEIC أو HEVC لتتمكّن من استخدام صور HEIF.
الكاميرات الأحادية اللون
يقدّم نظام التشغيل Android 10 دعمًا إضافيًا لتنسيق البث Y8
والبيانات الوصفية الثابتة لصفيف فلاتر الألوان أحادية اللون والأشعة تحت الحمراء القريبة (NIR) ووظائف DngCreator
ل
الكاميرات أحادية اللون.
إمكانية الاتصال
الاتصال والمراسلة
أرقام الطوارئ والاتصال بخدمات الطوارئ
يقدّم نظام Android 10 دعمًا محسّنًا لميزة الاتصال في حالات الطوارئ. في حالات الطوارئ، يمكن للأجهزة المتوافقة مع الإصدار 1.4 من IRadio HAL بدء مكالمة طوارئ باستخدام أرقام الطوارئ التي يتم استرجاعها من مصدر مثل شريحة SIM أو إشارة الشبكة أو قاعدة بيانات Android. يمكن تصنيف الأرقام استنادًا إلى فئات خدمات معالجة حالات الطوارئ، مثل الشرطة والإطفاء والإسعاف.
واجهات برمجة تطبيقات المكالمات الجماعية
واجهات برمجة التطبيقات للمكالمات الجماعية هي امتداد لواجهات برمجة التطبيقات لخدمات إدارة البث الموحّد للوسائط (eMBMS) التي تمت إضافتها في Android 9. تحدِّد واجهات برمجة التطبيقات الجديدة معيارًا للتطبيقات للانضمام إلى مكالمات مجموعات البث الخلوي والبث عليها من خلال التفاعل مع حِزم البرامج الوسيطة لنظام إدارة البث عبر شبكات الجوّال (eMBMS). تتطلّب المكالمات الجماعية دعمًا من مورّد شريحة المعالجة ومورّد البرنامج الوسيط ومشغّل شبكة الجوّال لتعمل بشكلٍ سليم. يمكن العثور على مستندات المطوّرين على الرابط developer.google.com.
إمكانات شريحة SIM عن بُعد
يقدّم نظام التشغيل Android 10 إمكانات استخدام شريحة SIM عن بُعد التي تسمح لتطبيقات المراسلة على جهاز مضيف Android بإرسال رسائل SMS من خلال الهواتف باستخدام آليات مثل البلوتوث. لمزيد من المعلومات، يُرجى الاطّلاع على مستندات المراجع الخاصة بالطريقة
getSubscriptionType
والثابت
SUBSCRIPTION_TYPE_REMOTE_SIM
.
شرائح eSIM متعددة
في نظام التشغيل Android 10، تتيح فئة EuiccManager
استخدام
الأجهزة التي تتضمّن
شرائح eSIM متعددة أو
شرائح eUICC.
آخر الأخبار عن شريحة eSIM
بالنسبة إلى الأجهزة التي تعمل بنظام التشغيل Android 10 وتتوافق مع شرائح eSIM، يجب تحديد ملف تعريف قاعدة بيانات عناوين eUICC غير القابلة للإزالة. يجب أن تكون الأجهزة متوافقة أيضًا مع IDERadio HAL v1.4 وIRadioConfig HAL v1.2. لمزيد من المعلومات، يُرجى الاطّلاع على تنفيذ شريحة eSIM ومتطلبات HAL.
شبكة الجيل الخامس غير المستقلة (NSA)
يتيح نظام Android 10 استخدام شبكة الجيل الخامس غير المستقلة (NSA). 5G NSA هو حلّ لشبكات الجيل الخامس التي تعتمد على بنية أساسية حالية لشبكة الجيل الرابع. في نظام التشغيل Android 10، يمكن للأجهزة عرض رمز شبكة الجيل الخامس (5G) في شريط الحالة عند اتصال الجهاز بشبكة الجيل الخامس.
اقتراح حساب على الهاتف
يقدّم نظام التشغيل Android 10 خدمة اقتراحات حسابات الهاتف التي تتيح عرض اقتراحات لحسابات الهاتف للمستخدمين عند إجراء مكالمة.
مشغِّل شبكة الجوّال
نقل إعدادات شبكة الجوّال
أعاد نظام التشغيل Android 10 تصميم إعدادات شبكة الجوال
رمز واجهة المستخدم ونقله من حِزمة Telephony إلى حِزمة Settings. لاستخدام
الرمز الذي تم نقله، عليك تغيير قيم إعدادات شبكة الجوّال التالية
من موارد Android إلى موارد CarrierConfig
:
config_world_mode
->
CarrierConfigManager#KEY_WORLD_MODE_ENABLED_BOOL
config_support_tdscdma
->
CarrierConfigManager#KEY_SUPPORT_TDSCDMA_BOOL
config_support_tdscdma_roaming_on_networks
->
CarrierConfigManager#KEY_SUPPORT_TDSCDMA_ROAMING_NETWORKS_STRING_ARRAY
config_enabled_lte
->
CarrierConfigManager#KEY_LTE_ENABLED_BOOL
معرّفات الجهاز
إنّ معرّفات الجهاز الدائمة (IMEI/MEID وIMSI والرقم التسلسلي للإصدار) محمية بإذن امتياز مع منح إذن الوصول أيضًا إلى تطبيقات مالك الجهاز والملف الشخصي. بما أنّ رقم IMSI والرقم التسلسلي لشريحة SIM يوفّرهما مشغّل شبكة الجوّال، يتم منح إذن الوصول إلى هذين المعرّفَين للتطبيقات التي تتمتع بامتيازات مشغّل شبكة الجوّال.
Wi-Fi
اختيار الشبكة
يُقيّم نظام Android باستمرار جودة الشبكة المتصلة ويصعُد تقييمه لجودة الشبكات المتاحة. يحتوي نظام التشغيل Android 10 على خوارزميات وإجراءات معدَّلة لاختيار شبكات Wi-Fi والتبديل بينها.
البحث عن شبكة Wi-Fi المفضّلة لنقل البيانات
يقدّم نظام التشغيل Android 10 طريقة اختيارية لواجهة برمجة التطبيقات باسم
setDeviceMobilityState()
في WifiManager
تزيد من الفاصل الزمني بين عمليات فحص
تفريغ البيانات إلى الشبكة المفضّلة (PNO)
عندما يكون الجهاز ثابتًا لتقليل استهلاك الطاقة.
شبكة Wi-Fi لمشغِّل شبكة الجوّال
في نظام التشغيل Android 10، تتصل الأجهزة التي تتضمّن ميزة Wi-Fi لمشغِّل شبكة الجوّال تلقائيًا بشبكات Wi-Fi لمشغِّل شبكة الجوّال التي تم إعدادها (الشبكات التي تتضمّن شهادات مفاتيح عمومية).
ميزة "الاتصال السهل بشبكة Wi-Fi"
في نظام التشغيل Android 10، يمكن للأجهزة استخدام ميزة Wi-Fi Easy Connect التي تستخدِم بروتوكول إعداد الأجهزة (DPP) الذي طرحه تحالف Wi-Fi (WFA) ل إعداد أجهزة Wi-Fi وضبطها.
وضع وقت الاستجابة المنخفض في Wi-Fi
يقدّم نظام التشغيل Android 10 وضع Wi-Fi بوقت استجابة منخفض الذي يضبط شريحة Wi-Fi لتقليل وقت الاستجابة.
خادم DHCP معدَّل
كجزء من عملية إنشاء مظلة خدمة "خادم IP"، تتم عملية
حذف dnsmasq
. يستبدل نظام التشغيل Android 10 استخدام خادم DHCPv4
الوظيفي بمكوّن منفصل، مكتوب في الأساس بلغة Java للدمج بشكلٍ أفضل مع مستوى التحكّم في إطار عمل Java. يؤدي ذلك إلى تحسين الأمان و
إمكانية تعديل خادم بروتوكول إدارة حزم البيانات (DHCP). لمزيد من التفاصيل، يُرجى الاطّلاع على packages/modules/NetworkStack/src/android/net/dhcp/DhcpServer.java
.
لا يلزم اتّخاذ أي إجراء لتنفيذ هذا التغيير: تستخدم جميع الأجهزة التي تطرح الإصدار Android 10 وتمت ترقيتها إليه DhcpServer
تلقائيًا.
إذا أجريت تخصيصات على خادم DHCP، يمكنك الرجوع إلى سلوك Android 9
من خلال ضبط الإعداد العام tether_enable_legacy_dhcp_server=1
.
يتم تضمين DhcpServer
الجديد في وحدة مكونات الشبكات، لذا يجب نقل أي تعديلات على وظيفة خادم DHCP إلى الإصدار العلني.
WPA3 وميزة "الفتح المحسّن" في Wi-Fi
يضيف نظام التشغيل Android 10 معايير أمان Wi-Fi Protected Access 3 (WPA3) وWi-Fi Enhanced Open لتوفير خصوصية وقوة أكبر في مواجهة هجمات معلومة.
اتصال Wi-Fi مباشر
اتصال Wi-Fi المباشر، المعروف أيضًا باسم Wi-Fi P2P، يتيح للأجهزة المتوافقة رصد بعضها والاتصال بها مباشرةً باستخدام بروتوكول Wi-Fi Direct بدون الوصول إلى الإنترنت أو شبكة الجوّال.
تحسينات على التوزيع العشوائي لعناوين MAC
اعتبارًا من Android 10، يتم تفعيل ميزة التوزيع العشوائي لعناوين MAC تلقائيًا في وضع العميل وSoftAp وWi-Fi Direct. يجب أن توفّر الأجهزة خيارًا لتفعيل أو إيقاف التوزيع العشوائي لعناوين MAC لكل معرّف SSID في واجهة مستخدم النظام.
Passpoint R2
يتيح نظام Android 10 استخدام ميزات Passpoint R2. تُنفِّذ خدمة Passpoint R2 ميزة "الاشتراك على الإنترنت" (OSU)، وهي طريقة عادية لتوفير الملفات الشخصية الجديدة في Passpoint. يتيح نظام التشغيل Android 10 إعداد ملفات EAP-TTLS باستخدام SOAP-XML.
NFC
تأمين الاتصال بالحقل القريب (NFC)
لا تسمح تقنية NFC الآمنة بتفعيل ميزة emulation (محاكاة) بطاقات NFC التي لا تملك مضيفًا إلا عندما تكون شاشة الجهاز مفتوحة. من خلال تنفيذ هذه الميزة، يمكن للمستخدمين تفعيل تقنية "الاتصال القصير المدى (NFC) الآمنة" لتحسين مستوى الأمان.
إيقاف ميزة "Android Beam" نهائيًا
في Android 10، لم تعُد ميزة Android Beam مطلوبة، وقد تم إيقاف الواجهات والأساليب التالية نهائيًا.
الواجهات:
NfcAdapter.CreateBeamUrisCallback
NfcAdapter.CreateNdefMessageCallback
NfcAdapter.OnNdefPushCompleteCallback
الطرق:
createBeamUris
invokeBeam
isNdefPushEnabled
setBeamPushUris
setBeamPushUrisCallback
setNdefPushMessage
setNdefPushMessageCallback
setOnNdefPushCompleteCallback
createNdefMessageCallback
onNdefPushCompleteCallback
لاستخدام ميزة Android Beam، أبلِغ عن الثابت المرتبط بالميزة
android.sofware.nfc.beam
.
الرسومات
ASurfaceControl
يضيف نظام التشغيل Android 10 ASurfaceControl
، وهي طريقة جديدة لقبول SurfaceFlinger
للمخازن المؤقتة.
تنفيذ الرسومات
طبقات OpenGL ES
يقدّم Android 10 نظامًا للطبقات لواجهة برمجة التطبيقات GLES.
EGL 1.5
ينفِّذ الإصدار 10 من نظام التشغيل Android واجهة EGL 1.5. للحصول على معلومات عن الميزات الجديدة في EGL 1.5، يمكنك الاطّلاع على مواصفات EGL 1.5 التي أصدرها Khronos.
Vulkan
يتيح نظام Android 10 استخدام رسومات Vulkan 1.1.
تتيح المنصة أيضًا استخدام VK_KHR_swapchain
الإصدار 70، ما يتيح لتطبيق Vulkan
إنشاء VkImage
مستند إلى ذاكرة سلسلة الاستبدال.
معدّل إعادة تحميل الأداء
يتيح نظام Android 10 إمكانية ضبط معدّل تحديث الأداء. تكون هذه الميزة غير مفعّلة تلقائيًا.
التفاعل
Automotive
صوتيات للسيارة
في Android 10، يتم ربط سياق Audio HAL برمز
AudioAttributes.usage
لتحديد الأصوات. يتوافق Android مع مثيل واحد
AUDIO_DEVICE_OUT_BUS
لكل سياق. IAudioControl
يقدّم HAL
إضافات خاصة بالمركبة إلى Audio HAL.
التنقّل بالإيماءات
يقدّم نظام التشغيل Android 10 خيارًا للتنقّل في النظام باستخدام الإيماءات بالكامل. للحصول على معلومات عن كيفية إعداد التطبيقات لاستخدام هذه الميزة، يُرجى الاطّلاع على صفحة التنقّل بالإيماءات على موقع "مطوّرو تطبيقات Android" الإلكتروني.
الشبكات العصبية
يقدّم نظام التشغيل Android 10 تعديلات على واجهة برمجة التطبيقات Neural Networks API وواجهة Neural Networks HAL. للحصول على ملخّص للتغييرات، يُرجى الاطّلاع على الشبكات العصبية.
مستندات جديدة ومعدَّلة حول الشبكات العصبية لنظام Android 10:
- نظرة عامة
- AHardwareBuffer
- عمليات التنفيذ المكثّفة وقوائم الرسائل السريعة
- تخزين الترجمة البرمجية
- اكتشاف الأجهزة وتحديدها
- إضافات المورّدين
أجهزة الاستشعار
Sensors HAL 2.0
يتيح Sensors HAL 2.0 استخدام قوائم الرسائل السريعة (FMQ) لإرسال أحداث أدوات قياس الاستشعار من HAL إلى إطار عمل أدوات استشعار Android.
إيقاف أجهزة الاستشعار
يتضمّن نظام التشغيل Android 10 إعدادًا للمطوّرين بهدف إيقاف جميع أجهزة الاستشعار على الجهاز. تساعد هذه الميزة المطوّرين على اختبار وظائف تطبيقاتهم في الحالات التي لا تتوفّر فيها تلك الأدوات، كما توفّر للمستخدمين طريقة للتحكّم في الأدوات في أجهزتهم.
إذا كانت أجهزتك تستخدم التنفيذ التلقائي لSensorService
وCameraService
وAudioPolicyService
، ليس هناك حاجة إلى تخصيص إضافي
للتصميم المرجعي. إذا كانت لديك أدوات استشعار أخرى، يمكنك الاطّلاع على التخصيص للحصول على مزيد من التفاصيل حول إمكانية استخدام هذه الميزة.
الوسائط
مكوّنات الوسائط القابلة للتحديث
يقدّم نظام التشغيل Android 10 مكوّنات وسائط قابلة للتحديث تتيح تعديل مكوّنات النظام النموذجية ذات الصلة بالوسائط من خلال بنية "متجر Google Play" الأساسية أو من خلال آلية تحديث البرامج عن بُعد (OTA) يوفّرها الشريك.
إدارة الحقوق الرقمية للوسائط
يحسّن نظام Android 10 من فائدة وسهولة استخدام واجهتَي برمجة التطبيقات
MediaDrm
Java وNDK.
فك التشفير
يتوافق نظام Android 10 مع فك ترميز AV1 SW.
الأذونات
يوفّر نظام التشغيل Android 10 إعدادات إضافية تتعلّق بالأذونات بهدف تعزيز الشفافية وحماية خصوصية المستخدم.
معلومات مقدّم جهات الاتصال ومدى التشابه
بدءًا من الإصدار 10 من Android، يتم الوصول إلى data المرتبطة بمدى التشابه بين جهات الاتصال، والتي يديرها مكوّن موفِّر جهات الاتصال، بطريقة مختلفة عن الإصدار 9 من Android والإصدارات الأقدم. تعمل هذه التغييرات المتعلقة بإمكانية الوصول إلى البيانات على تحسين خصوصية المستخدمين في جميع أجهزة Android 10 التي تستخدم مكوّن "موفِّر جهات الاتصال". لم تعُد قاعدة البيانات الأساسية تحتوي على بيانات تفضيلات جهات الاتصال. وبالتالي، لا يمكن للتطبيقات الكتابة فيه أو القراءة منه.
من المتوقّع أن تؤثر التغييرات في Android 10 بشكلٍ كبير في واجهات برمجة التطبيقات. إذا كانت تطبيقاتك تعتمد على الميزات المتوقّفة نهائيًا المذكورة في موفِّر جهات الاتصال ومعلومات التشابهات، ننصحك بتحديث تطبيقاتك للتأقلم مع أي تغييرات. بالإضافة إلى ذلك، إذا كنت تستخدم إصدارًا منقّحاً من موفِّر جهات الاتصال، عليك تحديث موفِّر جهات الاتصال.
أذونات تحديد الموقع الجغرافي الثلاثية
تمنح أذونات الموقع الجغرافي الثلاثية في Android 10 المستخدمين مزيدًا من التحكّم في كيفية وصول التطبيقات إلى مواقع أجهزتهم الجغرافية.
تذكير بشأن الوصول إلى البيانات لرصد الموقع الجغرافي في الخلفية
يتضمّن نظام التشغيل Android 10 تذكيرًا بالوصول إلى الموقع الجغرافي في الخلفية، مما يزيد من الشفافية بشأن مقدار إذن وصول التطبيقات إلى الموقع الجغرافي للجهاز ويساعد المستخدمين في الحفاظ على التحكّم في هذا الوصول.
حظر المواقع الجغرافية التي يتم تحديدها بشكل عشوائي
عندما يطلب تطبيق موقع جهاز جغرافي، يمكن للتطبيق إما الانتظار إلى أن يتم تلقّي ردّ على الطلب، أو الحصول على تعديل موقع جغرافي مناسب من خلال استخدام أدوات الاستماع إلى الموقع الجغرافي. بدءًا من الإصدار 10 من Android، للحصول على
تعديلات الموقع الجغرافي المناسبة،
على المطوّرين تحديد أنّهم بحاجة إلى تعديلات الموقع الجغرافي التلقائية من فئة
FusedLocationProviderClient
.
تشغيل التطبيقات في الخلفية
في Android 10، لا يمكن للتطبيقات غير المميّزة التي لا تتضمّن نافذة مرئية بدء تشغيلها تلقائيًا في المقدّمة. يؤدي هذا التغيير إلى حظر النوافذ المنبثقة للإعلانات والاستيلاءات الضارّة. ليس عليك اتّخاذ أي إجراء لتفعيل هذه الميزة.
وضع الحماية في التطبيقات
في Android 10، تتوفّر للتطبيقات طريقة عرض محدودة لملف "ملف التمهيد"، بدون إمكانية الوصول مباشرةً إلى مسارات مثل /sdcard/DCIM
. ومع ذلك، تحتفظ التطبيقات
بإمكانية الوصول الكامل إلى المسارات الخاصة بالحِزم، كما تظهر في أي
طُرق سارية مثل
Context.getExternalFilesDir()
.
لا تزال التطبيقات تتمتع بإمكانية الوصول الكامل إلى المسارات الأساسية الخاصة بحِزمها.
استخدِم إرشادات مشاركة الملفات في بيئة التطبيق المحمية لتوفير مستوى مناسب من الدقة في مشاركة البيانات.
حظر وصول التطبيقات إلى الحافظة
في Android 10، تم تغيير إذن الوصول إلى الحافظة بحيث
لا يمكن مشاهدة محتوى الحافظة من خلال استدعاء
ClipboardManager.getPrimaryClip
أو من خلال إضافة مستمع
onPrimaryClipChangedListener
للحصول على إشعار عند تغيير الحافظة. ويؤدي ذلك إلى زيادة
خصوصية المستخدمين وحظر التطبيقات التي تعرض إعلانات ضارة من تعديل الحافظة.
في الإصدار 10 من Android، لا يُسمح بالوصول للقراءة إلا إما
إلى التطبيق الحالي الذي يتلقّى تركيز الإدخال، أو إلى لوحة المفاتيح الحالية. لا يتم الآن تشغيل طلب المستمع
ClipboardManager.onPrimaryClipChanged()
إلا للتطبيقات التي تستوفي هذه القيود.
يعرض ClipboardManager.getPrimaryClip
وClipboardManager.getPrimaryClipDescription
القيمة null
إذا لم يكن التطبيق الذي يطلب الإجراء هو أسلوب الإدخال
المحرِّر التلقائي (IME) أو إذا لم يكن تركيز الإدخال عليه.
تشمل أذونات التشغيل التعرّف على النشاط.
يظهر للمستخدمين الآن مربّع حوار لميزة "التعرّف على الأنشطة" عندما يصل أحد التطبيقات إلى الموقع الجغرافي للجهاز في الخلفية. يجب أن تكون أذونات التشغيل المحظورة بشدة مُدرَجة بشكلٍ سليم في القائمة البيضاء في Android 10.
إذن MANAGE_DEVICE_ADMINS
يغيّر نظام التشغيل Android 10 إذن
MANAGE_DEVICE_ADMINS
من توقيع أو إذن خاص إلى توقيع فقط. وهذا يعني أنّه يمكن فقط
للتطبيقات الموقَّعة من النظام ضبط التطبيقات الأخرى كمشرف للجهاز.
تحسينات على Sharing API
يوفّر نظام التشغيل Android 10 عددًا من ميزات Android Platform API الجديدة المتعلّقة بالمشاركة. إذا عدّلت رمز "لوحة المشاركة" في عملية التنفيذ، تأكَّد من أنّ عملية التنفيذ متوافقة مع هذه الميزات الجديدة. إذا لم تعدِّل رمز جدول الاشتراک في عملية التنفيذ، لن تحتاج إلى اتّخاذ أي إجراء لتوفير هذه الميزات الجديدة.
Android Runtime (ART)
الإعداد الموقّع
تتيح ميزة الإعداد الموقَّعإدراج إعدادات قيود واجهة غير حزمة تطوير البرامج (SDK) في حِزم APK. يتيح ذلك إزالة واجهات معيّنة غير متوفرة في حزمة SDK من القائمة السوداء، حتى تتمكّن أداة AndroidX من استخدامها بأمان. من خلال هذا التغيير، يمكن أن يضيف AndroidX ميزات جديدة على إصدارات Android القديمة.
الأداء
طبقة تجريد Cgroup
يتضمّن نظام التشغيل Android 10 طبقة تجريد cgroup وملفات تعريف المهام التي يمكن للمطوّرين استخدامها لوصف مجموعة من القيود لتطبيقها على سلسلة محادثات أو عملية.
برنامج Low Memory Killer Daemon (lmkd)
يتيح نظام التشغيل Android 10 استخدام lmkd
وضع جديد يستخدِم مراقبي معلومات (PSI) المتعلّقة بالضغط على نواة النظام لرصد الضغط على الذاكرة.
الطاقة
إدارة طاقة النظام الأساسي
في Android 10، يمكن تفعيل وضع "الاستراحة" على الأجهزة التي تعمل دائمًا وعلى الأجهزة التي تعمل بالبطارية.
توفير شحن البطارية في سلسلة إجراءات
يقدّم نظام التشغيل Android 10 خيارًا جديدًا لجدول توفير شحن البطارية يُسمى استنادًا إلى سلسلة الإجراءات. تسمح ميزة توفير شحن البطارية وفقًا لسلسلة إجراءات لتطبيقٍ يختاره المصنّع الأصلي للجهاز بإرسال إشارات إلى النظام من أجل جدولة ميزة توفير شحن البطارية بشكل أكثر ذكاءً. يتطلب هذا الخيار الضبط، وهو اختياري لتطبيقه.
HAL لإحصاءات الطاقة
في Android 10، تحلّ واجهة برمجة التطبيقات
IPowerStats.hal
محلّ واجهات برمجة التطبيقات لجمع إحصاءات الطاقة في
IPower.hal
.
على الرغم من أنّ HAL للطاقة لا يزال يتيح استخدام واجهات برمجة التطبيقات، سيتم نقلها حصريًا إلى
HAL لإحصاءات الطاقة في المستقبل.
يتضمّن HAL لبيانات الطاقة واجهات برمجة تطبيقات جديدة تتيح جمع البيانات من قياس استهلاك الطاقة على الأجهزة المتوافقة. تم أيضًا تعديل واجهات برمجة التطبيقات الحالية لجمع ملفّات تعريف إحصاءات الطاقة لتحسين المرونة. تظل واجهات برمجة التطبيقات الخاصة بالتلميحات بشأن الطاقة في HAL للطاقة ولا تتغيّر.
الحدّ من التأثير الحراري
يقدّم إطار العمل الحراري في Android 10 واجهة برمجة تطبيقات مجردة للجهاز لجهاز استشعار درجة حرارة النظام الفرعي الحراري، بما في ذلك وحدة المعالجة المركزية ووحدة معالجة الرسومات والبطارية والجلد وجهاز التبريد. يقدّم إطار العمل واجهة طلب اطّلاع للاستعلام عن الحالة الحرارية لبدء الحدّ من السرعة، وواجهة طلب استدعاء ل إرسال رسالة إلى المستخدم عند تجاوز حدّ معيّن.
يقدّم نظام التشغيل Android 10 أنواع البيانات الجديدة من خلال واجهة
IThermalService
باستخدام الطريقتَين الجديدتَين أدناه:
getCurrentThermalStatus()
تعرض الحالة الحرارية الحالية للجهاز كعدد صحيح، ما لم يكن الجهاز يخضع لعملية تقييد.addThermalStatusListener()
يضيف مستمعًا.removeThermalStatusListener()
تزيل مستمعًا تمت إضافته سابقًا.
تضيف التطبيقات مستمعين وتزيلهم وتحصل على حالة درجة الحرارة في فئة
PowerManager
. لا يمكن لواجهة برمجة تطبيقات إلا الوصول إلى معلومات عن الأحداث السببية المرتبطة، مثل واجهة برمجة تطبيقات Android أو واجهة برمجة تطبيقات المصنّع. على المصنّعين
للأجهزة أو صانعي المنظومة المتكاملة للشرائح (SoC) تنفيذ thermal HAL 2.0
لتفعيل الوظائف
الكاملة للإطار الحراري الجديد.
للحصول على مثال على تنفيذ تدابير التخفيف من الآثار الحرارية، يُرجى الاطّلاع على النموذج المرجعي للتنفيذ.
التحديثات
تنسيق ملف APEX
Android Pony EXpress (APEX) هو تنسيق حاوية جديد يُستخدَم في عملية تثبيت مكوّنات النظام المُجمَّعة.
الأقسام الديناميكية
توفّر الأقسام الديناميكية نظامًا لقسمة مساحات المستخدمين في نظام التشغيل Android، ما يتيح إنشاء الأقسام أو
تغيير حجمها أو إزالتها أثناء تحديثات OTA. لا داعي للقلق لدى صانعي الأجهزة
بشأن الأحجام الفردية للأقسام، مثل system
وvendor
و
product
. بدلاً من ذلك، يتم تخصيص قسم super
كبير واحد، ويمكن ضبط حجم الأقسام الفرعية
بشكل ديناميكي داخله.
تحديثات النظام الديناميكية
تتيح لك التحديثات الديناميكية للنظام (DSU) إنشاء صورة نظام Android يمكن للمستخدمين تنزيلها من الإنترنت وتجربتها بدون المخاطرة بتلف صورة النظام الحالية.
الاحتفاظ بنسخة احتياطية واستعادة البيانات في نظام متعدّد المستخدمين
يتيح نظام التشغيل Android 10 ميزة الاحتفاظ بنسخة احتياطية من البيانات واستعادتها لجميع المستخدمين على الجهاز. في السابق، كانت ميزة "الاحتفاظ بنسخة احتياطية من البيانات واستعادتها" متاحة فقط لمستخدم النظام. يكون الاحتفاظ بنسخة احتياطية من البيانات واستعادتها غير مفعَّل تلقائيًا لمستخدمي الجهاز غير المُدرَجين في النظام، لأنّ هذه الميزة لا تغطي سوى جزء من الإعدادات والخلفية ومكوّنات النظام.
Overlayfs
من المتوقّع أن يتمكّن المستخدمون الذين يعملون باستخدام إصدارات userdebug
أو eng
من إعادة تركيب قسم النظام بفعالية كقسم للقراءة والكتابة، ثم إضافة أي عدد من
الملفات أو تعديلها بدون إعادة فلاش صورة النظام. يمكنك استخدام Overlayfs
الذي يُعدّ تلقائيًا مساحة تخزين احتياطية لنظام ملفات قابل للكتابة كمرجع أعلى، ويتم تثبيته فوق مساحة التخزين السفلية. تحدث هذه الإجراءات في طلبَي
adb disable-verity
وadb remount
. لمزيد من التفاصيل، يُرجى الاطّلاع على
ملف README الخاص بـ Overlayfs
في AOSP.
إتاحة المكتبة المشتركة في وضع الاسترداد
في نظام التشغيل Android 10، تتوفّر المكتبات المشتركة في
قسم الاسترداد، ما يزيل الحاجة إلى أن تكون جميع الملفات التنفيذية في وضع الاسترداد
ثابتة. يمكن العثور على المكتبات المشتركة ضمن الدليل
/system/lib
(أو /system/lib64
للأجهزة التي تعمل بنظام 64 بت) في القسم.
لإضافة مكتبة مشتركة جديدة إلى قسم الاسترداد، أضِف recovery_available: true
أو recovery: true
إلى Android.bp
من المكتبة المشترَكة. يُثبِّت الإجراء الأول المكتبة في كل من قسمَي النظام والتعافي
، بينما يُثبِّت الإجراء الثاني المكتبة في قسم الاسترداد فقط.
لا يمكن إنشاء ميزة المكتبة المشتركة باستخدام نظام الإنشاء المستنِد إلى أداة make في Android.
لتحويل ملف تنفيذي ثابت حالي لوضع الاسترداد إلى ملف تنفيذي ديناميكي،
أزِل LOCAL_FORCE_STATIC_EXECUTABLE := true
في Android.mk
أو
static_executable: true
(في Android.bp
).
نقطة تفتيش بيانات المستخدمين (UDC)
يقدّم Android 10 ميزة "نقطة فحص بيانات المستخدم" (UDC) التي تتيح لنظام Android الرجوع إلى حالته السابقة عند تعذُّر تثبيت تحديث Android عبر شبكة Wi-Fi.