O aplicativo Android 12.0 chama a série 2 de implementação da função de interface da camada hal (implementação da função da camada jni)

1. Introdução

 No desenvolvimento customizado do sistema rom em 12.0, durante o desenvolvimento de algumas camadas hal, para algumas interfaces da camada hal que precisam ser chamadas no app para implementar determinadas funções, é necessário abrir a interface do app para o hal para realizar as funções. Requisitos,
esta seção primeiro fala sobre fornecer a interface na camada hal e, em seguida, implementar a chamada de interface da camada hal na camada jni. Em seguida,
crie um arquivo jni na camada de estrutura para chamar a interface da camada hal.

2. O aplicativo chama a classe principal da série 2 de implementação de função de interface de camada hal (implementação de função de camada jni)

       frameworks/base/services/core/jni/com_android_server_TestService.cpp
        frameworks/base/services/core/jni/Android.bp
        frameworks/base/services/core/jni/onload.cpp

3. Análise e implementação das funções principais da segunda série de implementação de função de interface de camada hal de chamada de aplicativo (implementação de função de camada jni)

HAL é a camada de abstração de hardware. Ela protege os detalhes de implementação do hardware para baixo e fornece interfaces abstratas para cima.
HAL é a interface direta entre o hardware subjacente e a estrutura da camada superior. A camada da estrutura pode operar o dispositivo de hardware
HAL e o driver do kernel através de HAL. HAL é implementado no espaço do usuário, o driver está no espaço do kernel, portanto, para proteger
os interesses dos principais fabricantes, algoritmos centrais e similares precisam ser implementados na camada hal

O nome completo do HIDL é linguagem de definição de interface HAL (Linguagem de definição de interface de camada de abstração de hardware).Antes disso, o Android tinha AIDL, que era
construído no Android binder e usado para definir a interface entre o cliente e o serviço Android com base na comunicação do Binder.
HIDL tem uma função semelhante, mas define o Android Framework

Guess you like

Origin blog.csdn.net/baidu_41666295/article/details/133524600