《深入理解Android:卷1》- Android架构

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011391629/article/details/79263780

Android是基于Linux内核的智能手机开发平台:

Android系统大体可以分为四层:

  • Linux内核层:包含Linux内核和一些驱动模块,包括(USB驱动、Camera驱动、蓝牙驱动、WiFi驱动、Audio驱动、Display驱动、Binder驱动、Flash驱动)
  • Libraries层:提供动态库(共享库)、Android运行时库、Dalvik虚拟机等。大部分用C/C++写的,可以简单的认为是Native层。
  • Framework层:通过以 Java 语言编写的 API 使用 Android OS 的整个功能集。这些 API 形成创建 Android 应用所需的构建块,它们可简化核心模块化系统组件和服务的重复使用。
  • Application层:应用程序,Java开发

这是我在网上找到的一张图:

这里写图片描述

这里写图片描述

上图是Java和Native层交互示意图,Java通过JNI层调用Linux OS中的系统调用来完成对应的功能。JNI层通过IPC(进程间通信)方式与Native层交互。

JNI是Java Native Interface的缩写,它提供了若干的API实现了Java和其他语言的通信(主要是C&C++)

猜你喜欢

转载自blog.csdn.net/u011391629/article/details/79263780