المشروع المفتوح المصدر لنظام Android (AOSP) هو رمز مصدر Android المتاح للجميع وقابل للتعديل. يمكن لأي مستخدم تنزيل AOSP وتعديله على جهازه. يقدّم AOSP تنفيذًا كاملاً ويعمل بشكل كامل لمنصّة Android الجوّالة.
هناك مستويان للتوافق مع الأجهزة التي تستخدم AOSP: توافق AOSP وتوافق Android. يجب أن يكون الجهاز متوافقًا مع AOSP ويتوافق مع قائمة المتطلبات الواردة في مستند تعريف معايير التوافق (CDD). يجب أن يكون الجهاز متوافقًا مع Android وأن يمتثل لقائمة المتطلبات الواردة في CDD ومتطلبات برامج المورّدين (VSR) والاختبارات، مثل تلك الواردة في مجموعة اختبارات المورّدين (VTS) ومجموعة أدوات اختبار التوافق (CTS). للاطّلاع على مزيد من المعلومات حول التوافق مع Android، يُرجى الرجوع إلى برنامج التوافق مع Android.
بنية AOSP
تحتوي حِزمة البرامج لنظام التشغيل AOSP على الطبقات التالية:
الشكل 1: بنية حِزمة البرامج AOSP
في ما يلي قائمة بتعريفات المصطلحات المستخدَمة في الشكل 1:
- تطبيق Android
- تطبيق تم إنشاؤه باستخدام واجهة برمجة تطبيقات Android فقط يُستخدم "متجر Google Play" على نطاق واسع للعثور على تطبيقات Android وتنزيلها، على الرغم من توفُّر العديد من البدائل الأخرى. في بعض الحالات، قد تريد الشركة المصنّعة للجهاز تثبيت تطبيق Android مسبقًا لتفعيل الوظائف الأساسية للجهاز. إذا كان يهمّك تطوير تطبيقات Android، يمكنك الانتقال إلى developers.android.com.
- التطبيق المزوّد بامتيازات
- تطبيق تم إنشاؤه باستخدام مجموعة من واجهات برمجة تطبيقات Android وواجهات برمجة تطبيقات النظام يجب تثبيت هذه التطبيقات مسبقًا كتطبيقات مميّزة على الجهاز.
- تطبيق الشركة المصنّعة للجهاز
- تطبيق تم إنشاؤه باستخدام مزيج من واجهة برمجة تطبيقات Android وواجهة برمجة تطبيقات النظام والوصول المباشر إلى تنفيذ إطار عمل Android ولأنّ الشركة المصنّعة للجهاز قد تصل مباشرةً إلى واجهات برمجة التطبيقات غير المستقرة ضمن إطار عمل Android، يجب تثبيت هذه التطبيقات مسبقًا على الجهاز ولا يمكن تحديثها إلا عند تحديث برنامج نظام الجهاز.
- System API
- تمثّل System API واجهات برمجة تطبيقات Android المتاحة فقط للشركاء وصنّاع العلامات التجارية للأجهزة الأصلية (OEM) لتضمينها في التطبيقات المجمّعة. يتم وضع علامة @SystemApi على واجهات برمجة التطبيقات هذه في رمز المصدر.
- Android API
- Android API هي واجهة برمجة التطبيقات المتاحة للجميع لمطوّري تطبيقات Android التابعة لجهات خارجية. للحصول على معلومات عن واجهة برمجة تطبيقات Android، يُرجى الرجوع إلى مرجع واجهة برمجة تطبيقات Android.
- إطار عمل Android
- مجموعة من فئات Java وواجهاتها والرموز الأخرى المجمَّعة مسبقًا والتي يتم استخدامها لإنشاء التطبيقات يمكن للجميع الوصول إلى أجزاء من إطار العمل من خلال استخدام واجهة برمجة التطبيقات Android API. لا تتوفّر أجزاء أخرى من إطار العمل إلا لمصنّعي المعدّات الأصلية من خلال استخدام واجهات برمجة تطبيقات النظام. يتم تشغيل رمز إطار عمل Android داخل عملية التطبيق.
- خدمات النظام
- خدمات النظام هي مكونات وحدات تركّز على مهام معيّنة، مثل
system_server
و SurfaceFlinger وMediaService. إنّ الوظائف التي تعرضها واجهة برمجة التطبيقات لإطار عمل Android تتواصل مع خدمات النظام للوصول إلى الأجهزة الأساسية. - مُشغِّل Android (ART)
- بيئة وقت تشغيل Java يوفّرها AOSP تُجري أداة ART عملية ترجمة رمز التطبيق الثنائي إلى تعليمات خاصة بالمعالج تتم تنفيذها من خلال بيئة التشغيل على الجهاز.
- طبقة تجريد الأجهزة (HAL)
- طبقة HAL هي طبقة تجريد تتضمّن واجهة قياسية لمورّدي الأجهزة لتنفيذها. تسمح واجهات HAL لنظام التشغيل Android بتنفيذ تطبيقات برمجية لواجهة برمجة التطبيقات بدون الحاجة إلى معرفة تفاصيل تنفيذ تطبيقات برمجية لواجهة برمجة التطبيقات ذات المستوى الأدنى. يتيح لك استخدام HAL تنفيذ الوظائف بدون التأثير في النظام الأعلى أو تعديله. لمزيد من المعلومات، اطّلِع على نظرة عامة على HAL.
- البرامج الخفية والمكتبات الأصلية
تشمل الخدمات الدائمة الأصلية في هذه الطبقة
init
وhealthd
وlogd
وstoraged
. تتفاعل هذه الخدمات الدائمة مع النواة أو الواجهات الأخرى مباشرةً، ولا تعتمد على تنفيذ HAL المستنِد إلى مساحة المستخدم.تشمل المكتبات الأصلية في هذه الطبقة
libc
وliblog
وlibutils
libbinder
وlibselinux
. تتفاعل هذه المكتبات الأصلية مباشرةً مع النواة أو واجهات أخرى ولا تعتمد على تنفيذ HAL المستند إلى مساحة المستخدم.- النواة
النواة هي الجزء المركزي من أي نظام تشغيل وتتواصل مع الأجهزة الأساسية على الجهاز. يتم تقسيم نواة AOSP كلما أمكن إلى وحدات لا تعتمد على الأجهزة ووحدات خاصة بالمورّدين. للحصول على وصف، بما في ذلك التعريفات، لمكوّنات نواة AOSP، يُرجى الرجوع إلى نظرة عامة على النواة.
ما هي الخطوات التالية؟
- إذا كنت حديث العهد بنظام التشغيل AOSP وأردت بدء عملية التطوير، يمكنك الرجوع إلى قسم "البدء".
- إذا أردت معرفة المزيد عن طبقة معيّنة من AOSP، انقر على اسم القسم في شريط التنقّل الأيمن وابدأ بالملخّص عن هذا القسم.