Bir ses politikası yapılandırması oluşturduktan sonra HAL uygulamasını bir paylaşılan kitaplığa paketlemeniz ve uygun konuma kopyalamanız gerekir:
- Kitaplığınızın kaynak dosyalarını içerecek bir
device/<company>/<device>/audiodizin oluşturun. - Paylaşılan kitaplığı oluşturmak için bir
Android.mkdosyası oluşturun. Makefile'in aşağıdaki satırı içerdiğinden emin olun:
LOCAL_MODULE := audio.primary.<device>
Android'in kitaplığı doğru şekilde yükleyebilmesi için kitaplığınızın adı
audio.primary.<device>.soolmalıdır. Bu dosya adınınprimarykısmı, bu paylaşılan kitaplığın cihazdaki birincil ses donanımı için olduğunu gösterir.audio.a2dp.<device>veaudio.usb.<device>modül adları Bluetooth ve USB ses arabirimleri için de kullanılabilir. Galaxy Nexus ses donanımındaki birAndroid.mkörneğini aşağıda görebilirsiniz: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) - Ürününüz, Android CDD tarafından belirtildiği gibi düşük gecikmeli sesi destekliyorsa ilgili XML özellik dosyasını ürününüze kopyalayın. Örneğin, ürününüzün
device/<company>/<device>/device.mkmakefile'inde: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 \
- Daha önce oluşturduğunuz ses politikası yapılandırma dosyasını ürününüzün
device/<company>/<device>/device.mkMakefile'indekisystem/etc/dizinine kopyalayın. Örnek:PRODUCT_COPY_FILES += \ device/samsung/tuna/audio/audio_policy.conf:system/etc/audio_policy.conf - Ürününüzün ihtiyaç duyduğu ses HAL'inizin paylaşılan modüllerini ürünün
device/<company>/<device>/device.mkMakefile dosyasında tanımlayın. Örneğin, Galaxy Nexus için birincil ve Bluetooth ses HAL modülleri gerekir:PRODUCT_PACKAGES += \ audio.primary.tuna \ audio.a2dp.default