安卓(Android)是由谷歌公司推出的一款使用Linux内核的开源操作系统,主要用于移动设备。虽然使用了Linux内核,但安卓的上层构筑与常见GNU/Linux发行版大不相同,因此一般不能把安卓归类为常说的 "Linux操作系统" 。提供给应用层最多接口的其实是Java框架层,承载着它的是Java虚拟机(以前是Dalvik VM,现在是ART)。故安卓上C库那层并没有为应用提供太多系统特色接口,只有一些性能敏感的音视频方面,比如EGL、OpenGL ES、mediandk、camerandk、neuralnetwork等库提供,大多也要结合JNI配合Java/Kotlin那边用。当然现在安卓也允许你用NativeActivity实现纯C/C++应用开发,但是如果你想干像显示一个通知或toast,甚至唤起输入法这种小事还是要用JNI在C/C++代码里调用Java接口,真气人。
