एक विज्ञापन बनाने के बाद ऑडियो नीति कॉन्फ़िगरेशन है, तो आपको एचएएल लागू करने के तरीके को किसी शेयर की गई लाइब्रेरी में पैकेज करना होगा और उसे उचित स्थान पर कॉपी करें:
device/<company>/<device>/audio
बनाएं डायरेक्ट्री में जोड़ा जा सकता है.- शेयर की गई लाइब्रेरी बनाने के लिए
Android.mk
फ़ाइल बनाएं. पक्का करें कि Makefile में यह लाइन शामिल है:
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया हैLOCAL_MODULE := audio.primary.<device>
आपकी लाइब्रेरी का नाम
audio.primary.<device>.so
होना चाहिए ताकि Android, लाइब्रेरी को सही तरीके से लोड कर सके. इसकाprimary
वाला हिस्सा इस फ़ाइल नाम से पता चलता है कि शेयर की गई यह लाइब्रेरी, मुख्य ऑडियो के लिए है डिवाइस में मौजूद हार्डवेयर. मॉड्यूल के नामaudio.a2dp.<device>
औरaudio.usb.<device>
, ब्लूटूथ और यूएसबी ऑडियो इंटरफ़ेस. यहांAndroid.mk
का एक उदाहरण दिया गया है, Galaxy Nexus ऑडियो हार्डवेयर:LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := audio.primary.tuna LOCAL_MODULE_RELATIVE_PATH := hw LOCAL_SRC_FILES := audio_hw.c ril_interface.c LOCAL_C_INCLUDES += \ external/tinyalsa/include \ $(call include-path-for, audio-utils) \ $(call include-path-for, audio-effects) LOCAL_SHARED_LIBRARIES := liblog libcutils libtinyalsa libaudioutils libdl LOCAL_MODULE_TAGS := optional include $(BUILD_SHARED_LIBRARY)
- अगर आपके प्रॉडक्ट पर, Android सीआईडी के मुताबिक इंतज़ार का समय कम करने वाला ऑडियो काम करता है, तो
इससे जुड़ी एक्सएमएल फ़ीचर फ़ाइल को अपने प्रॉडक्ट में कॉपी करें. उदाहरण के लिए, आपके
प्रॉडक्ट का
device/<company>/<device>/device.mk
मेकफ़ाइल:PRODUCT_COPY_FILES := ... PRODUCT_COPY_FILES += \ frameworks/native/data/etc/android.hardware.audio.low_latency.xml:system/etc/permissions/android.hardware.audio.low_latency.xml \
- आपके द्वारा पहले बनाई गई ऑडियो नीति कॉन्फ़िगरेशन फ़ाइल को
आपके प्रॉडक्ट की
system/etc/
डायरेक्ट्रीdevice/<company>/<device>/device.mk
मेकफ़ाइल. उदाहरण के लिए:PRODUCT_COPY_FILES += \ device/samsung/tuna/audio/audio_policy.conf:system/etc/audio_policy.conf
- अपने ऑडियो एचएएल के शेयर किए गए उन मॉड्यूल का एलान करें जो आपके डिवाइस के लिए ज़रूरी हैं
प्रॉडक्ट के
device/<company>/<device>/device.mk
मेकफ़ाइल. उदाहरण के लिए, Galaxy Nexus के लिए प्राथमिक और ब्लूटूथ ऑडियो HAL की आवश्यकता होती है मॉड्यूल:PRODUCT_PACKAGES += \ audio.primary.tuna \ audio.a2dp.default