از 27 مارس 2025، توصیه می کنیم از android-latest-release به جای aosp-main برای ساختن و کمک به AOSP استفاده کنید. برای اطلاعات بیشتر، به تغییرات AOSP مراجعه کنید.
با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
هنگام اضافه کردن کد به AOSP، از پرچمهای راهاندازی ویژگی استفاده کنید تا کد تست نشده را از کد آزمایش شده جدا کنید. برای اجرا و آزمایش کد خود، پرچم های راه اندازی ویژگی را فعال کنید. برعکس، برای اطمینان از اجرا نشدن کد تست نشده، پرچمهای راهاندازی ویژگی را غیرفعال کنید.
پرچمهای راهاندازی ویژگی عمدتاً به این دو روش استفاده میشوند:
اگر در AOSP مشارکت میکنید، ممکن است بازبین تغییر از شما بخواهد پرچم راهاندازی ویژگی را پیادهسازی کنید تا ویژگی به درستی آزمایش شود. برای اطلاعات بیشتر در مورد شاخه ها، به چرخه عمر انتشار مراجعه کنید.
Google از پرچمهای راهاندازی ویژگی استفاده میکند تا اطمینان حاصل کند که آخرین شاخه نسخه اندروید ( android16-release ) برای همه پایدار است. اگر شرکت شما آینه ای از AOSP نگه می دارد و از آن آینه کار می کند، از علامت گذاری راه اندازی ویژگی استفاده کنید تا آیینه کد AOSP خود را برای تیم توسعه خود ثابت نگه دارد.
مراحل سطح بالا برای اجرای پرچم گذاری راه اندازی ویژگی عبارتند از:
برای تغییر کد مشخص، مشخص کنید که آیا به پرچم نیاز دارید یا خیر، و در این صورت، نوع پرچم را تعیین کنید.
پرچم را اعلام کنید
تغییر کد خود را در پرچم قرار دهید.
مقدار پرچم را تنظیم کنید.
کد خود را بسازید و آزمایش کنید.
تغییر مقادیر پرچم در زمان اجرا
کد آزمایشی که از پرچمهای انتشار ویژگی استفاده میکند
صفحات این بخش نحوه انجام هر یک از این مراحل را به شما آموزش می دهد.
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی.
[[["درک آسان","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-29 بهوقت ساعت هماهنگ جهانی."],[],[],null,["# Feature launch flag overview\n\nWhen adding code into AOSP, use *feature launch flags* to isolate\nuntested code from tested code. Enable feature launch flags to execute and\ntest your code.\nConversely, disable feature launch flags to ensure untested code doesn't\nexecute.\n\nFeature launch flags are used primarily in these two ways:\n\n- If you're contributing to AOSP, you might be asked by your change's reviewer to implement a feature launch flag so that the feature is tested properly. For further information on branches, see [Release lifecycle](/docs/setup/contribute/release-lifecycle).\n- Google uses feature launch flags to ensure the Android latest release branch (`android16-release`) is stable for everyone. If your company keeps a mirror of AOSP and works from that mirror, use feature launch flagging to keep your mirror of AOSP code stable for your development team.\n\n| **Note:** Feature launch flagging is part of a new development process called *Trunk Stable* whereby all official AOSP releases are snapped from a single internal main development branch. To achieve this goal, the main development branch must remain stable at all time. Trunk Stable requires all updates and new features to be flagged so they can, on a case-by-case basis, be included or excluded from the internal main branch before snapping a release. For more on the AOSP release process, see [Release\n| lifecycle](/docs/setup/contribute/release-lifecycle).\n\nThe high-level steps for implementing feature launch flagging are:\n\n1. For a given code change, determine if you need a flag and, if so, determine the flag type.\n2. Declare the flag.\n3. Wrap your code change in the flag.\n4. Set the flag's value.\n5. Build and test your code.\n6. Change flag values at runtime.\n7. Test code that uses feature release flags\n\nThe pages in this section teach you how to perform each of these steps."]]