O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

Configurando uma Biblioteca Compartilhada

Depois de criar uma configuração de política de áudio , você deve empacotar a implementação HAL em uma biblioteca compartilhada e copiá-la para o local apropriado:

  1. Crie um diretório device/<company>/<device>/audio para conter os arquivos fonte de sua biblioteca.
  2. Crie um arquivo Android.mk para construir a biblioteca compartilhada. Certifique-se de que o Makefile contém a seguinte linha:
    LOCAL_MODULE := audio.primary.<device>
    

    Sua biblioteca deve ser nomeada audio.primary.<device>.so para que o Android possa carregar a biblioteca corretamente. A parte primary deste nome de arquivo indica que esta biblioteca compartilhada é para o hardware de áudio principal localizado no dispositivo. Os nomes dos módulos audio.a2dp.<device> e audio.usb.<device> também estão disponíveis para interfaces de áudio Bluetooth e USB. Aqui está um exemplo de um Android.mk do hardware de áudio 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)
    

  3. Se o seu produto oferece suporte a áudio de baixa latência, conforme especificado pelo Android CDD, copie o arquivo de recurso XML correspondente em seu produto. Por exemplo, no device/<company>/<device>/device.mk do seu produto device/<company>/<device>/device.mk Makefile:
    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 \
    

  4. Copie o arquivo de configuração da política de áudio que você criou anteriormente para o diretório do system/etc/ no device/<company>/<device>/device.mk Makefile do seu produto. Por exemplo:
    PRODUCT_COPY_FILES += \
            device/samsung/tuna/audio/audio_policy.conf:system/etc/audio_policy.conf
    

  5. Declare os módulos compartilhados de seu HAL de áudio que são exigidos por seu produto no device/<company>/<device>/device.mk Makefile do produto. Por exemplo, o Galaxy Nexus requer os módulos HAL de áudio principal e Bluetooth:
    PRODUCT_PACKAGES += \
            audio.primary.tuna \
            audio.a2dp.default