يحتوي مشروع في "استوديو Android لمنصة" (ASfP) على كل ما يحدّد مساحة العمل الخاصة بقاعدة رموز AOSP، بدءًا من الرموز المصدرية والأصول وصولاً إلى رموز الاختبار وإعدادات الإنشاء.
عند بدء مشروع جديد، تنشئ ASfP البنية اللازمة لجميع ملفاتك وتجعلها مرئية في نافذة المشروع. لفتح النافذة، انقر على عرض (View) > نوافذ الأدوات (Tool Windows) > المشروع (Project).
تقدّم هذه الصفحة نظرة عامة على المكوّنات الرئيسية داخل إعدادات مشروعك.
إعدادات المشروع (.asfp-project
)
يتم التحكّم في إعدادات مشروع ASfP من خلال الملف .asfp-project
،
الموجود في جذر دليل مشروعك. ملف YAML هذا ضروري للتحكّم في محتوى مشروعك وكيفية عمل الميزات المهمة. يمكنك فتحها من خلال القائمة الرئيسية باستخدام ASfP > المشروع > فتح الإعدادات أو من خلال العثور عليها في عرض المشروع.
عند إنشاء مشروع، يتم إنشاء إعدادات استنادًا إلى المواصفات التي يقدّمها المستخدم. يمكن تعديل جميع المَعلمات في ملف الإعداد في أي وقت لتغيير مواصفات المشروع، مثل تعديل أدلة المشروع أو الوحدات، وبعد ذلك يجب إجراء عملية مزامنة لكي تظهر التغييرات.
مَعلمات الإعداد
في ما يلي المَعلمات الرئيسية التي يمكنك ضبطها في ملف .asfp-project
:
repo
مطلوبة
تمثّل هذه السمة المسار المطلق إلى جذر مستودع منصة Android.
repo: /path/to/aosp
lunch
مطلوبة
هدف الإطلاق الذي سيتم ربطه بمشروعك. يتم استخدام هذا الخيار لجميع إجراءات إنشاء Soong، بما في ذلك المزامنة وإعدادات التشغيل ذات الصلة.
lunch: your-product-variant-userdebug
directories
اختياري
الأدلة التي تريد تضمينها في مشروعك أو استبعادها منه يجب أن تكون هذه المسارات نسبية بالنسبة إلى الجذر repo
.
directories:
include:
- frameworks/base
- packages/apps/Settings
exclude:
- vendor
- out/soong
modules
اختياري
الوحدات التي تريد تضمينها في مشروعك أو استبعادها منه تعمل هذه السمة بالتزامن مع directories
المحدّدة سابقًا. يمكن استخدام الأسماء الكاملة والمختصرة.
modules:
include:
- SystemUIGoogle
- frameworks/base/services/core/java:services
exclude:
- UnusedModule
test_sources
اختياري
تحاول ASfP التمييز بين مصادر الإنتاج ومصادر الاختبار، ولكن في بعض الحالات، قد تحتاج إلى الإشارة بوضوح إلى مصادر الاختبار. قدِّمها كمسارات نسبية بالنسبة إلى جذر repo
. سيتم وضع علامة "اختبار" على أي جذور مصدرية تمثّل دلائل فرعية للمسارات المحدّدة.
test_sources:
- cts/tests/tests/example
- tests/mytests
other_languages
اختياري
يتم تضمين توافق Java تلقائيًا. يمكنك إضافة دعم للغات أخرى.
يتوافق ASfP أيضًا مع C/C++ (cpp
) وRust (rust
).
other_languages:
- cpp
- rust
build_config
اختياري
تتيح لك هذه المَعلمة إضافة علامات مخصّصة أو متغيرات بيئة إلى أحداث Soong build. ينطبق هذا الإعداد على جميع الإجراءات في بيئة التطوير المتكاملة التي تؤدي إلى إنشاء Soong، بما في ذلك عمليات المزامنة وإعدادات التشغيل.
build_config:
flags:
- -j64
env:
SOONG_ALLOW_MISSING_DEPENDENCIES: true
MY_CUSTOM_VAR: value