تكون جميع علامات إطلاق الميزات READ_WRITE ومضبوطة على DISABLED تلقائيًا.
قبل أن تتمكّن من اختبار ميزة، عليك تجاهل القيمة التلقائية المستخدَمة في الإصدار من خلال إنشاء ملف قيم علامات للعلامة. في ملف قيم العلامات، يمكنك ضبط حالة علامة فردية (ENABLED أو DISABLED) وإذن (READ_WRITE أو READ_ONLY).
إعداد الإصدار هو دليل يحتوي على جميع ملفات قيم العلامات لإصدار معيّن من Android (مع تفعيل ميزات معيّنة وإيقافها).
يتضمّن مشروع AOSP بعض إعدادات الإصدار، مثل trunk_staging.
يمكن العثور على أدلة إعدادات الإصدار ضمن
WORKING_DIRECTORY/build/release/aconfig/.
عند استخدام الأمر lunch من أجل
اختيار هدف، فإنّك
تضبط أيضًا إعداد الإصدار للهدف.
على سبيل المثال، ما يلي هو trunk_staging مستهدَف:
lunch aosp_cf_x86_64_only_phone-trunk_staging-userdebug
مرحلة الإعداد الرئيسية هي إعداد إصدار تطويري لأنّ Google تستخدمها لاختبار الميزات قبل طرحها للجمهور. يستخدم هذا الإعداد
معظم علامات READ_WRITE التي تتيح لك اختبار الرمز البرمجي مع تفعيل الميزات أو إيقافها في وقت التشغيل.
عند طرح الإصدار العام، استخدِم إعدادات الإصدار. يستخدم إعداد إصدار READ_ONLY علامات ويعرض كل الرموز المفعّلة لهذا الإصدار.
إضافة علامة إلى إعدادات إصدار trunk_staging
لاختبار علامة جديدة، أضِفها إلى trunk_stagingإعدادات الإصدار على النحو التالي:
- الانتقال إلى
WORKING_DIRECTORY/build/release/aconfig/trunk_staging/ - أنشِئ دليلاً يحمل اسم الحزمة نفسه الذي يحمله العلم، مثل
com.example.android.aconfig.demo.flagsالموضّح في تعريف علم aconfig للغة Java. - انتقِل إلى الدليل الجديد.
- في الدليل، أنشئ ملف قيم علامات يجمع بين الاسم المستخدَم في ملف تعريف العلامة (
.aconfig)، مثلmy_static_flagالموضّح في تعريف علامة aconfig للغة Java مع_flag_values.textproto. اسم الملف الناتج هوmy_static_flag_flag_values.textproto. عدِّل الملف وأضِف
flag_valueمشابهًا لما يلي:flag_value { package: "com.example.android.aconfig.demo.flags" name: "my_static_flag" state: DISABLED Permission: READ_WRITE }المكان:
- يحتوي
packageعلى اسم الحزمة نفسه المستخدَم في البيان. - يحتوي
nameعلى الاسم نفسه المستخدَم في البيان. stateهو إماENABLEDأوDISABLED.permissionهو إماREAD_WRITEأوREAD_ONLY. بشكل عام، يتم ضبطpermissionعلىREAD_ONLYلملفات قيم العلامات التي تشكّل جزءًا من إعدادات الإصدار.
- يحتوي
احفظ الملف واخرج من المحرر.
في الدليل نفسه الذي يوجد فيه ملف قيم العلامات، أنشئ ملف إصدار باسم
Android.bp. يُستخدَم هذا الملف لتضمين ملف قيم العلامات في الإصدار.في الملف
Android.bp، أنشئ قسمaconfig_valuesمشابهًا لما يلي:aconfig_values { name: "aconfig-values-platform_build_release-trunk-staging-com.example.android.aconfig.demo.flags-all", package: "com.example.android.aconfig.demo.flags", srcs: [ "*_flag_values.textproto", ] }المكان:
-
nameهو الاسم الفريد لوحدة إنشاء Soong. تستخدم Google اصطلاحaconfig-values-platform_PATH_TO_RELEASE_CONFIG_DIR-CONFIG_NAME-package.name-all. يجب أن يتطابق هذا الاسم مع الاسم الذي ينشئه Soong تلقائيًا استنادًا إلى تعريفaconfig_value_setفي ملفAndroid.bpالخاص بالدليل الرئيسي. يُرجى العِلم أنّPATH_TO_RELEASE_CONFIG_DIRهيbuild_release. - يحتوي
packageعلى اسم الحزمة نفسه المستخدَم في البيان. srcsهي قائمة بجميع ملفات قيم العلامات.
-
احفظ الملف واخرج من المحرر.
الانتقال إلى الدليل الذي يسبق الدليل الحالي (
cd ..)أنشِئ تطبيق Android، وشغِّل الرمز الجديد للتأكّد من أنّه مفعّل وفقًا للإعداد في ملف قيم العلامات.