يحتوي هذا المستند على إجابات عن أسئلة عامة حول "منصة Android مفتوحة المصدر" (AOSP).
لمحة عن android-latest-release
لماذا لا يمكنني إرسال تغييرات إلى aosp-main؟
لا يمكنك إرسال المحتوى إلى الفرع aosp-main لأنّه متاح للقراءة فقط.
أين يمكنني اقتراح تغييرات على AOSP؟
يجب اقتراح تغييرات جديدة على android-latest-release (عند استخدام Repo) أو على فرع المراجعة التلقائي المحدّد في بيان android-latest-release (عند استخدام Git مباشرةً). لا حاجة إلى نقل التغييرات المقترَحة الحالية في الفروع الأخرى (مثل aosp-main).
لمزيد من المعلومات، يُرجى الاطّلاع على تحميل التغيير للمراجعة.
أي فرع يجب أن تتم المزامنة معه؟
عند استخدام Repo، يمكنك المزامنة مع
android-latest-releaseباستخدام الأمر التالي:repo init --partial-clone --no-use-superproject -b android-latest-release -u https://android.googlesource.com/platform/manifestعند استخدام Git مباشرةً، تتم المزامنة مع فرع المراجعة التلقائي المحدّد في
android-latest-releaseالبيان.
راجِع إعداد عميل Repo للحصول على مزيد من التفاصيل حول مزامنة الفروع.
هل سيتم دمج الرمز من android-latest-release في aosp-main؟
لا، لن يتم دمج الرمز مع aosp-main، وهو فرع للقراءة فقط اعتبارًا من 27 مارس 2025.
أين يتم نشر الرمز البرمجي للإصدار التالي؟
ترسل Google رمز الإصدار التالي إلى فرع الإصدار العلني الأخير
وتعدّل android-latest-release ملف البيان للإشارة إلى هذا الفرع.
هل سيتم اختيار طلب التغيير من فرع android-latest-release إلى Gerrit الداخلي؟
بعد تحميل تغيير مقترَح، ستراجعه Google، وإذا تم قبوله، ستنقله إلى Gerrit الداخلي.
كيف يمكنني معرفة ما إذا تم قبول طلب التغيير؟
تظهر التغييرات المقبولة والمختارة في عملية دفع مستقبلية إلى فرع إصدار على مضيف Android، ويمكن مزامنتها مع المستودع باستخدام android-latest-release.
لا تتوفّر آلية إشعارات لإعلامك عند قبول التغيير المقترَح أو رفضه.
ما هي خطوات العمل العامة بدءًا من اقتراح تغيير من قِبل مساهم خارجي إلى أن يتم دمجه في أحدث فرع إصدار؟
يقترح مساهم خارجي إجراء تغيير على
android-latest-release(عند استخدام Repo) أو على أحدث فرع إصدار محدّد في بيانandroid-latest-release(عند استخدام Git مباشرةً).تراجع Google التغيير. إذا كان التغيير:
تم قبول التغيير، وتختار Google التغيير وتدمجه في فرع التطوير الداخلي.
لم تتم الموافقة على التغيير، لأنّ Google لا تختار التغييرات بشكل انتقائي.
يتحقّق المساهم الخارجي من التغيير الذي أجراه في
android-latest-release.
ماذا لو لم أعد بحاجة إلى التغيير المقترَح؟
إذا لم تعُد بحاجة إلى التغيير المقترَح أو إذا كنت لا تريد دمجه، أو إذا علمت أنّ Google قد راجعته، عليك إلغاء التغيير ليبقى في سجلّ التغييرات المقترَحة على جهاز Android المضيف.
أسئلة مفتوحة المصدر
لماذا أتاحت Google رمز المصدر لنظام التشغيل Android؟
أطلقت Google مشروع AOSP استجابةً لتجاربنا الخاصة في إطلاق تطبيقات الأجهزة الجوّالة. أردنا التأكّد من توفّر منصة مفتوحة دائمًا لشركات الاتصالات والمصنّعين الأصليين للأجهزة والمطوّرين كي يتمكّنوا من تحويل أفكارهم المبتكرة إلى واقع. أردنا أيضًا تجنُّب أي نقطة مركزية قد تؤدي إلى حدوث عطل، وبالتالي لا يمكن لأي جهة فاعلة في المجال أن تقيّد أو تتحكّم في الابتكارات التي تقدّمها أي جهة أخرى. إنّ هدفنا الأهم من "مشروع Android المفتوح المصدر" هو ضمان تنفيذ برنامج Android المفتوح المصدر على نطاق واسع وبشكل متوافق قدر الإمكان، وذلك لتحقيق فائدة للجميع.
ما هو نوع مشروع Android المفتوح المصدر؟
تشرف Google على تطوير AOSP الأساسي وتعمل على إنشاء منتديات قوية للمطوّرين والمستخدمين. في معظم الحالات، يكون رمز المصدر لنظام التشغيل Android مرخَّصًا بموجب ترخيص Apache 2.0 المتساهل، وليس بموجب ترخيص حقوق النسخ. لقد اخترنا ترخيص Apache 2.0 لأنّنا نعتقد أنّه يشجّع على الاستخدام الواسع النطاق لبرامج Android. لمعرفة التفاصيل، يُرجى الاطّلاع على التراخيص.
لماذا تتولّى Google إدارة Android؟
إنّ إطلاق منصة برامج أمر معقّد. تُعدّ الانفتاحية أمرًا حيويًا لنجاح أي منصة على المدى الطويل، لأنّها تجذب استثمارات المطوّرين وتضمن تكافؤ الفرص. يجب أن تكون المنصة أيضًا منتجًا جذابًا للمستخدمين.
وقد خصّصت Google موارد هندسية احترافية لضمان أن يكون Android منصة برامج تنافسية بالكامل. تتعامل Google مع مشروع Android كعملية تطوير منتج على نطاق واسع، وتبرم صفقات تجارية ضرورية لضمان طرح أجهزة رائعة تعمل بنظام Android في السوق.
ومن خلال ضمان نجاح Android لدى المستخدمين، نساعد في الحفاظ على أهمية Android كمنصة وكمشروع مفتوح المصدر. ففي النهاية، من يريد الحصول على الرمز المصدر لمنتج غير ناجح؟
هدفنا هو ضمان توفير منظومة متكاملة ناجحة حول Android. لقد أتحنا رمز المصدر لنظام التشغيل Android ليتمكّن أي شخص من تعديل البرنامج وتوزيعه بما يتوافق مع احتياجاته.
ما هي استراتيجية Google الشاملة لتطوير منتجات Android؟
نطرح أجهزة رائعة في سوق تنافسية. بعد ذلك، ندمج الابتكارات والتحسينات التي أجريناها في المنصة الأساسية كإصدار تالٍ.
يعني ذلك أنّ فريق الهندسة في Android يركّز على عدد قليل من الأجهزة "الرائدة" ويطوّر الإصدار التالي من برنامج Android لدعم عمليات إطلاق هذه المنتجات. وتتحمّل هذه الأجهزة الرائدة معظم مخاطر المنتج، كما تمهّد الطريق أمام مجموعة كبيرة من الشركات المصنّعة للأجهزة الأصلية التي تطلق المزيد من الأجهزة التي تستفيد من الميزات الجديدة. بهذه الطريقة، نتأكّد من أنّ نظام Android الأساسي يتطوّر وفقًا لاحتياجات الأجهزة في العالم الحقيقي.
كيف يتم تطوير برامج Android؟
يحتوي كل إصدار من Android (مثل 1.5 أو 8.1) على فرع مطابق في شجرة المصدر المفتوح. يُعدّ أحدث فرع هو إصدار الفرع الثابت الحالي الذي يشير إليه ملف البيان android-latest-release.
هذا هو الفرع الذي تنقله الشركات المصنّعة إلى أجهزتها. ويتم الحفاظ على هذا الفرع مناسبًا للإصدار في جميع الأوقات.
أخيرًا، تعمل Google على الإصدار التالي من نظام Android الأساسي بالتزامن مع تطوير جهاز رائد.
لماذا يتم تطوير أجزاء من Android بشكل خاص؟
يستغرق طرح جهاز في السوق عادةً أكثر من عام. وبالطبع، تريد الشركات المصنّعة للأجهزة شحن أحدث إصدار من البرامج. في الوقت نفسه، لا يريد المطوّرون تتبُّع الإصدارات الجديدة من النظام الأساسي باستمرار عند كتابة التطبيقات. وتواجه كلتا المجموعتين توترًا بين طرح المنتجات وعدم التخلّف عن الركب.
ولحلّ هذه المشكلة، يتم تطوير بعض أجزاء الإصدار التالي من Android، بما في ذلك واجهات برمجة التطبيقات الأساسية للمنصة، في فرع خاص. تشكّل واجهات برمجة التطبيقات هذه الإصدار التالي من Android. هدفنا هو التركيز على الإصدار الثابت الحالي من الرمز المصدري لنظام التشغيل Android أثناء إنشاء الإصدار التالي من النظام الأساسي. ويتيح ذلك للمطوّرين ومصنّعي المعدات الأصلية استخدام إصدار واحد بدون الحاجة إلى تتبُّع العمل المستقبلي غير المكتمل لمواكبة التغييرات.
متى يتم إصدار رموز المصدر؟
عندما يصبحون جاهزين. إنّ إصدار رمز المصدر هو عملية معقّدة إلى حدّ ما. يتم تطوير بعض أجزاء Android، مثل النواة، بشكل مفتوح، ويكون رمز المصدر متاحًا دائمًا. يتم تطوير أجزاء أخرى أولاً في شجرة خاصة، ويتم إصدار الرمز المصدري عند توفّر إصدار النظام الأساسي التالي.
في بعض الإصدارات، تكون واجهات برمجة التطبيقات الأساسية للمنصة جاهزة قبل وقت كافٍ من طرح الجهاز، ما يتيح لنا نشر الرمز المصدري قبل طرح الجهاز. في الإصدارات الأخرى، لا يمكن إجراء ذلك. في جميع الحالات، نصدر رمز مصدر النظام الأساسي عندما نرى أنّ الإصدار مستقر وعندما تسمح عملية التطوير بذلك.
ما هي الخطوات المتّبعة لطرح رمز المصدر لإصدار جديد من Android؟
إنّ طرح الرمز المصدر لإصدار جديد من نظام Android الأساسي هو عملية مهمة. أولاً، يتم تضمين البرنامج في صورة نظام للجهاز، ثم يتم إخضاعه لأشكال مختلفة من شهادات الاعتماد، بما في ذلك شهادة الاعتماد التنظيمية الحكومية للمناطق التي سيتم طرح الهواتف فيها. يخضع الرمز أيضًا لاختبارات المشغّل. هذه مرحلة مهمة من العملية، لأنّها تساعد في رصد أخطاء البرامج.
بعد موافقة الجهات التنظيمية والمشغّلين على الإصدار، تبدأ الشركة المصنّعة في إنتاج الأجهزة بكميات كبيرة، ونبدأ نحن في طرح الرمز المصدري.
بالتزامن مع الإنتاج الضخم، يبدأ فريق Google عدة جهود للاستعداد لإصدار البرنامج المفتوح المصدر. وتشمل هذه الجهود إجراء التغييرات النهائية على واجهة برمجة التطبيقات وتعديل المستندات (لتعكس أي تعديلات تم إجراؤها أثناء اختبار التأهيل، على سبيل المثال) وإعداد حزمة تطوير برامج (SDK) للإصدار الجديد وإطلاق معلومات توافق النظام الأساسي.
يُجري فريقنا القانوني عملية توقيع نهائي لإصدار الرمز البرمجي كمصدر مفتوح. وكما يُطلب من المساهمين في المشاريع المفتوحة المصدر توقيع اتفاقية ترخيص المساهمين التي تشهد على ملكيتهم الفكرية للمساهمة، يجب أن تتأكّد Google من أنّ المصدر قد حصل على إذن بالمساهمة.
منذ بدء الإنتاج الضخم، تستغرق عملية إصدار البرنامج شهرًا تقريبًا، لذا غالبًا ما يتم إصدار رمز المصدر في الوقت نفسه الذي تصل فيه الأجهزة إلى المستخدمين.
ما هي العلاقة بين "مشروع Android المفتوح المصدر" و"برنامج التوافق مع Android"؟
يحافظ مشروع AOSP على برامج Android ويطوّر إصدارات جديدة. وبما أنّ هذا البرنامج مفتوح المصدر، يمكن استخدامه لأي غرض، بما في ذلك تطوير أجهزة غير متوافقة مع أجهزة أخرى تستند إلى المصدر نفسه.
تتمثل وظيفة "برنامج التوافق مع Android" في تحديد تنفيذ أساسي لنظام Android يكون متوافقًا مع تطبيقات الجهات الخارجية التي يكتبها المطوّرون. الأجهزة المتوافقة مع Android مؤهَّلة للمشاركة في منظومة Android المتكاملة، بما في ذلك Google Play، أما الأجهزة التي لا تستوفي متطلبات التوافق، فلا يمكنها المشاركة في هذه المنظومة.
بعبارة أخرى، يتيح لنا "برنامج التوافق مع Android" التمييز بين الأجهزة المتوافقة مع Android والأجهزة التي تعمل فقط بنسخ مشتقة من الرمز المصدري. نرحّب بجميع استخدامات رمز المصدر لنظام التشغيل Android، ولكن للمشاركة في منظومة Android المتكاملة، يجب أن يحدّد البرنامج أنّ الجهاز متوافق مع Android.
كيف يمكنني المساهمة في تطوير Android؟
يمكنك الإبلاغ عن الأخطاء أو كتابة تطبيقات لنظام Android أو المساهمة في رمز المصدر في مشروع AOSP.
هناك حدود لأنواع المساهمات من التعليمات البرمجية التي نقبلها. على سبيل المثال، قد يرغب أحد المستخدمين في المساهمة في توفير واجهة برمجة تطبيقات بديلة للتطبيقات، مثل بيئة كاملة مستندة إلى C++. سنرفض هذه المساهمة لأنّ نظام التشغيل Android يشجّع على تشغيل التطبيقات في وقت تشغيل ART. وبالمثل، لن نقبل مساهمات مثل مكتبات GPL أو LGPL غير المتوافقة مع أهداف الترخيص.
ننصح المهتمين بالمساهمة في رمز المصدر بالتواصل معنا من خلال القنوات المدرَجة في منتدى Android قبل البدء في أي عمل. لمزيد من التفاصيل، يُرجى الاطّلاع على مقالة المساهمة.
كيف يمكنني أن أصبح مساهمًا في Android؟
لا يتضمّن مشروع AOSP مفهومًا للمساهم. تخضع جميع المساهمات (بما في ذلك تلك التي يقدّمها موظفو Google) لنظام مستند إلى الويب يُعرف باسم Gerrit وهو جزء من عملية هندسة Android. يعمل هذا النظام بالتزامن مع نظام إدارة الرموز المصدرية Git من أجل إدارة المساهمات في الرموز المصدرية بشكل سليم.
على مانح الموافقة المعيّن مراجعة جميع التغييرات المقترَحة وقبولها. يكون المراجعون عادةً من موظفي Google، ولكنهم يتحمّلون المسؤولية عن جميع عمليات الإرسال، بغض النظر عن مصدرها.
لمزيد من التفاصيل، يُرجى الاطّلاع على إرسال تصحيحات.