علامات AAOS الخاصة بإعدادات الصوت

يستخدم نظام التشغيل Android Automotive (AAOS) العلامات وعمليات الضبط لتفعيل ميزات مختلفة بدءًا من التوجيه الديناميكي إلى علامات ميزات عامة أكثر، مثل التحكم في مستوى الصوت من خدمة السيارة. علامات إعدادات AAOS الحالية للصوت إدارة المشروعات هنا.

إبلاغ الغرض
audioUseDynamicRouting محددة في ملف إعداد خدمة السيارة إلى تفعيل توجيه AAOS يجب ضبط الإعداد على true. عند false، التوجيه وجزء كبير من CarAudioService غير مفعّل، إلى السلوك الافتراضي الموضح في إعداد سياسات الصوت
audioUseCarVolumeGroupMuting تم تحديدها في ملف إعداد خدمة السيارة لتفعيل كتم الصوت للأفراد مجموعات مستوى الصوت. عند الضبط على false (القيمة التلقائية)، سيتم تجاهل تم إيقاف مجموعات مستوى الصوت الفردية. بدلاً من ذلك، يؤدي كتم الصوت إلى تبديل كتم الصوت الرئيسي. عند الضبط على true، يتم تفعيل ميزة كتم صوت مجموعة مستوى صوت السيارة وتبدأ كل يمكن كتم صوت مجموعة فردية من وحدات الصوت بشكل منفصل. عند true، يجب تنفيذ كتم صوت مجموعة الحجم في HAL للتحكم في الصوت:
audioUseHalDuckingSignals محدّدة في ملف إعداد خدمة السيارة لتفعيل واجهة برمجة تطبيقات IAudioControl#onDevicesToDuckChange لإعلام HAL بالوقت المناسب بطة عندما true (القيمة التلقائية)، تتلقّى واجهة برمجة التطبيقات إشارات تشير إلى ما يلي: أجهزة إخراج البطة والاستخدامات التي تركز على التركيز. عند false، واجهة برمجة التطبيقات التي لا يتم استدعاؤها. لا يتم استدعاء واجهة برمجة التطبيقات إلا التحكّم في الصوت باستخدام طبقة تجريد الأجهزة (HAL) لتنفيذ تجنب التداخل.
config_oemCarService محددة في ملف تهيئة خدمة السيارات، هذا هو اسم المكون خدمة تخصيص المصنّع الأصلي للجهاز. يمكن للمصنّعين الأصليين للأجهزة اختيار تنفيذ هذه الخدمة من أجل تخصيص إجراءات خدمة السيارة لسياسات مختلفة في حال اختار المصنّعون الأصليون للأجهزة بتنفيذ هذا المكون، فيجب عليه تنفيذ خدمة لتوسيع عرض OemCarService من خلال Car-lib، ثم تنفيذه خدمات المكونات المطلوبة. لخدمات الصوت في السيارات على وجه التحديد، يمكن للمصنّعين الأصليين للأجهزة تنفيذ أي من الخدمات الصوتية الفرعية لإدارة الإجراءات الصوتية. بالنسبة التفاصيل، راجع خدمة المكوِّن الإضافي للصوت للسيارات: إذا كان اسم المكوِّن غير صالح، لن يتصل CarService. لأي خدمة من خدمات المصنّع الأصلي للجهاز. لا يمكن أن يكون اسم المكوِّن حزمة من جهة خارجية. أُنشأها جون هنتر، الذي كان متخصصًا أن تكون مثبتة مسبقًا.
audioVolumeAdjustmentContextsVersion

تم تحديده في ملف إعداد خدمة السيارات، والإعداد لتحديد إصدار قائمة أولوية سياق تعديل مستوى الصوت.

يتضمّن الإصدار 1 جميع السياقات الصوتية بالترتيب التالي:

  • NAVIGATION
  • CALL
  • MUSIC
  • ANNOUNCEMENT
  • VOICE_COMMAND
  • CALL_RING
  • SYSTEM_SOUND
  • SAFETY
  • ALARM
  • NOTIFICATION
  • VEHICLE_STATUSEMERGENCY

يقتصر الإصدار 2 على السياقات التالية، بهذا الترتيب.

الإصدار التلقائي هو 1.

  • CALL
  • MUSIC
  • ANNOUNCEMENT
  • VOICE_COMMAND
audioPersistMasterMuteState تم تحديده في ملف إعداد خدمة السيارة، والضبط للحفاظ على الإعدادات العامة حالة كتم الصوت. عندما يستعيد true (القيمة التلقائية) Android حالة كتم الصوت العامة عند التشغيل. عندما يكون audioUseCarVolumeGroupMuting true، لا يؤثر ذلك في استمرار تغييرات كتم الصوت كتجاهل. تستند التغييرات إلى مجموعات مستوى الصوت الفردية. يتم ضبط القيمة التلقائية على true ويجب استبداله عند عدم وجوب التجاهل الرئيسي تستمر لجهاز.
audioVolumeKeyEventTimeoutMs

محددة في ملف إعداد خدمة السيارات، والتهيئة للإشارة إلى المهلة بالمللي ثانية عندما تكون مجموعة مستويات صوت السيارات نشطة بالنسبة إلى التغييرات في عنصر التحكّم في مستوى الصوت أثناء الأحداث الرئيسية في مستوى الصوت يتم استخدام الإعدادات على النحو التالي:

  • يتم استخدام المهلة لتحديد ما إذا كان تشغيل (مستوى صوت الصوت المرتبط مع استخدام صوت التشغيل) يمكن اعتبارها تلقائية مستوى الصوت بعد توقف التشغيل.
  • يتم أيضًا استخدام المهلة باعتبارها مدة الإيقاف المؤقت المطلوبة بين تعديلات مستوى الصوت لتغيير ما يضبطه المستخدم.

القيمة التلقائية هي 3000 ملي ثانية، ويجب أن تكون وتعديلها من قبل المصنّعين الأصليين للأجهزة لتخصيص تجربة المستخدم.

audioUseCarVolumeGroupEvent محدد في ملف إعداد خدمة السيارة، الإعداد لتفعيل معاودة الاتصال الأحداث إلى مجموعات الحجم. عندما true، يتلقّى العملاء معاودة الاتصال. حتى ICarVolumeGroupEvent إلى الأحداث التي تؤثّر في الحجم مجموعات. عند تفعيل هذا الخيار:

  • ننصح بشدة بأن يقدّم المورّدون IAudioControl#setModuleChangeCallback و IAudioControl#registerGainCallback للأحداث والتغييرات على أجهزة الصوت.
  • عندما يتم تحديد كل من CarVolumeCallback و تم تسجيل CarVolumeGroupEventCallback من قِبل الشركة نفسها فستبدأ استدعاءات استدعاء كتم الصوت لمجموعة مستوى الصوت ومجموعة استدعاءات كتم الصوت من خلال CarVolumeGroupEventCallback فقط. لذلك، ننصح بشدة بنقل جميع التطبيقات إلى الإصدار الجديد واجهة معاودة الاتصال لضمان اتساق الأداء.
  • القيمة التلقائية هي false. ننصحك بضبط هذه الميزة إلى true لأنّ واجهات برمجة التطبيقات لإتاحة استخدام الوحدات القديمة يتم إيقاف عمليات معاودة الاتصال وستتم إزالتها تمامًا قريبًا.

config_useFixedVolume تم تحديدها في frameworks/base/core/res/res/values/config.xml. يجب ضبط القيمة على true للسماح بإدارة خدمة الصوت في السيارة. عنصر التحكم في مستوى الصوت. عندما لا تكون العلامة config_useFixedVolume غير تم تعيينها أو يتم تعيينها على false (القيمة الافتراضية)، يمكن للتطبيقات استدعاء AudioManager واجهة برمجة تطبيقات إدارة مستوى الصوت وتغيير مستوى الصوت بمقدار نوع البث في أداة مزج البرامج. وقد يكون هذا غير مرغوب فيه بسبب في التطبيقات الأخرى واحتمال انخفاض مستوى الصوت في البرامج التي يمكن أن تؤدي إلى عدد أقل من وحدات البت المهمة المتاحة في الإشارة عند استقبالها على مضخّم الجهاز. الأجهزة الجديدة التي لم تم ضبطها، والتي تم ضبطها على true، وسيتم تطبيق التغييرات على مستوى الصوت. من خلال واجهة برمجة التطبيقات الخاصة بمستوى صوت AudioManager وكتم صوت الميكروفون.
config_handleVolumeKeysInWindowManager تم تعريفه في frameworks/base/core/res/res/values/config.xml، ويجب يمكن ضبطها على true للسماح لخدمة الصوت في السيارة باعتراض مستوى صوت الأحداث الرئيسية في حال ضبط مستوى الصوت على false (القيمة التلقائية) يمكن أن تتم إعادة توجيه الأحداث الرئيسية إلى التطبيق الذي يعمل في المقدّمة ويمكن أن يؤدي إلى نتائج نتائج من إدارة الأحداث الرئيسية لمستوى الصوت خارج خدمة الإعدادات الصوتية للسيارة.

إعدادات خدمات الصوت في السيارة

قبل Android 13، كان يتم استبدال إعدادات خدمة السيارات مع تراكب إعدادات المنتج (لمزيد من المعلومات، راجع تخصيص الإصدار باستخدام تراكبات الموارد) للملف packages/services/Car/service/res/values/config.xml.

PRODUCT_PACKAGE_OVERLAYS := <path_to_overlay>

موقع ملف الإعداد من <path_to_overlay> إلى ملف الإعداد يجب أن يشمل الموقع الجغرافي packages/services/Car/service/res/values/.

قوائم الأماكن القابلة للتقديم (RRO) الخاصة بخدمة السيارات

بدءًا من الإصدار 13 من نظام التشغيل Android، يدعم نظام التشغيل Android Automotive (AAOS). تراكبات موارد وقت التشغيل: استخدم RRO لتغيير لإعدادات إعدادات الصوت في السيارة. على سبيل المثال، يمكنك الاطلاع على قوائم تسجيل الموارد (RRO) الخاصة مرجع السيارات cuttlefish في device/google/cuttlefish/shared/auto/rro_overlay/ تشير رسالة الأشكال البيانية تم إلغاء إعدادات audioUseDynamicRouting في device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/res/values/config.xml

<resources>
    <bool name="audioUseDynamicRouting">true</bool>
...

يتم تضمين خريطة تراكب الموارد في device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/res/xml/overlays.xml:

<overlay>
...
  <item target="bool/audioUseDynamicRouting"
value="@bool/audioUseDynamicRouting" />
...
</overlay>

بيان تراكب الموارد المحدد في device/google/cuttlefish/shared/auto/rro_overlay/CarServiceOverlay/AndroidManifest.xml يحتوي على القيمة targetPackage التي تم ضبطها على com.android.car.updatable.

اطّلِع على هذه المراجع لمزيد من المعلومات:

واجهة برمجة التطبيقات التي تتضمّن ميزات

تعرض الطريقة القيمة true إذا كانت الميزة مفعّلة على الجهاز، وبخلاف ذلك false في واجهة برمجة التطبيقات CarAudioManager#isAudioFeatureEnabled، تستخدم المعلمة يجب أن يكون الإدخال واحدًا مما يلي:

  • AUDIO_FEATURE_DYNAMIC_ROUTING
  • AUDIO_FEATURE_VOLUME_GROUP_MUTING
  • AUDIO_FEATURE_OEM_AUDIO_SERVICE
  • AUDIO_FEATURE_VOLUME_GROUP_EVENTS
  • AUDIO_FEATURE_AUDIO_MIRRORING