اعتبارًا من 27 آذار (مارس) 2025، ننصحك باستخدام android-latest-release
بدلاً من aosp-main
لإنشاء AOSP والمساهمة فيه. لمزيد من المعلومات، يُرجى الاطّلاع على التغييرات في AOSP.
نظرة عامة حول عملية الإنشاء
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
يستخدم AOSP نظام إنشاء Soong لإنشاء نظام التشغيل Android. تستفيد أداة Soong من أداة kati GNU
لاستنساخ أداة Make وNinja لنظام الإنشاء
لزيادة سرعة إنشاء إصدارات Android.
تُعرف ملفات إنشاء Soong باسم ملفات المخطّط ويتم تسميتها Android.bp
. تتشابه هذه
الملفات من حيث البنية
والدلالة مع ملفات BUILD في Bazel.
للحصول على وصف مفصّل لتنسيق ملف Android.bp
، يُرجى الاطّلاع على
تنسيق ملف Android.bp.
للحصول على معلومات عن تحويل ملفات Make إلى ملفات Android.bp
، يُرجى الاطّلاع على مقالة
مقارنة بين Make وSoong.
علامات إطلاق الميزات وعلامات الإصدار
علامات إطلاق الميزات هي علامات ثنائية تُستخدَم لعزل الرمز البرمجي الذي لم يتم اختباره عن الرمز البرمجي الذي تم اختباره. إذا كان لديك نسخة مطابقة من الفرع المخصّص للتطوير الخارجي في AOSP، يمكنك استخدام هذه العلامات للحفاظ على ثبات الرمز المطابق. بالإضافة إلى ذلك،
إذا كنت تنوي المساهمة برمز إلى فرع التطوير الخارجي العلني،
قد يطلب منك مراجع التغيير تنفيذ علامة لرمزك.
رموز التجميع هي ثوابت (سلاسل) وقت التجميع تُستخدَم لتعديل عملية التجميع، مثل تضمين مكتبة رموز برمجية اختياريًا.
للحصول على شرح عن فروع الرموز البرمجية المختلفة، راجِع دورة حياة الإصدار.
تتطلّب علامات إطلاق الميزات وعلامات الإنشاء تغييرات في ملفات الإنشاء. للحصول على
معلومات إضافية عن هذه العلامات، بما في ذلك استخدامها في إصدار، اطّلِع على نظرة عامة على علامات إطلاق الميزات والصفحات المجاورة.
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["# Build overview\n\nAOSP uses the *Soong* build system to build Android. Soong leverages the\n[kati](https://github.com/google/kati/blob/master/README.md) GNU\nMake clone tool and [Ninja](https://ninja-build.org/) build system\ncomponent to speed up builds of Android.\n\nSoong build files are called *blueprint files* and are named `Android.bp`. These\nfiles are similar in syntax and\nsematics to [Bazel BUILD files](https://bazel.build/reference/be/overview).\n\nFor a detailed description of the `Android.bp` file format, see\n[Android.bp file format](/docs/setup/reference/androidbp).\n\nFor information on converting your Make files to `Android.bp` files, see\n[Make and Soong comparison](/docs/setup/build/make-to-soong).\n\nFeature launch flags and build flags\n------------------------------------\n\n*Feature launch flags* are binary flags used to isolate untested code from\ntested code. If you have your own mirror of the AOSP external development\nbranch, you can use these flags to keep your mirrored code stable. Additionally,\nif you intend on contributing code to the public external development branch,\nyou might be asked by your change's reviewer to implement a flag for your code.\n\n*Build flags* are build-time constants (strings) used to modify your build, such\nas optionally including a code library.\n\nFor an explanation of the different code branches, see\n[Release lifecycle](/docs/setup/contribute/release-lifecycle).\n\nFeature launch flags and build flags require changes to build files. For\nadditional information on these flags, including their use in a build, see\nthe [Feature launch flags overview](/docs/setup/build/feature-flagging) and\nadjacent pages."]]