The relationship between the Android application framework layer and the hardware abstraction layer and the underlying
1. JNI Technology:
(1). JNI technology simply means declaring local methods and loading dynamic-link libraries (. so files) in the local Java language
(2). The dynamic-link library (. So file) is compiled by the NDK to compile A/C + + file.
2. HAL Layer Development:
(1). HAL is the abbreviation for Hardware abstraction layer. Also known as the hardware abstraction layer.
(2). The Hardware Access service is implemented at the framework level.
(3). The Hardware Access service is implemented in the Java language, and the hardware abstraction layer is written in the C + + language. Therefore, the hardware Access service must invoke the interface of the hardware abstraction layer through JNI technology.
(4). The hardware abstraction layer calls the Linux kernel interface at the bottom.
3. The main reasons for Android HAL exist:
(1). Not all hardware devices have the standard Linux kernel interface.
(2). Some device manufacturers do not want to expose hardware drivers, so use the HAL development approach.
(3). For some hardware, Android has some special needs.
Drawings:
Note:
Android consists of a collection of C + + libraries that make use of various components of the Android system.
These features burst through the Android application framework layer to the developer.
The relationship between the Android Framework application framework layer and the HAL Hardware abstraction layer and the Linux kernel underlying