Android JNI学习笔记

来源:互联网 发布:cctv5高清无插件软件 编辑:程序博客网 时间:2024/05/16 15:22

JNI并不是Android独有的,而是从Java中继承下来的。

JNI是Java Native Interface的缩写,中文译为“Java本地调用”。通过JNI技术,Java语言可以和C/C++语言(Native指的就是C/C++)互相调用。

本来Java是平台无关的,但是一旦使用了JNI技术,就会破坏其平台无关性。那么为什么要在Java中使用JNI技术呢?

  • 在不同的操作系统上,对文件系统操作的API是不一样的,为了对Java语言屏蔽操作系统之间的差异,就需要使用JNI技术。对于Java层来说,使用的是同一个方法,该方法调用了本地的Native方法,而Native方法是因平台而异的。
  • Java的运行效率比C/C++要低得多,所以很多算法仍然会用C/C++实现,然后在Java中调用。
  • 在Java诞生以前,很多软件都是用Native语言编写的,所以在Java中的很多功能已经在Native中实现了,Java语言也没必要做重复劳动,只需要直接调用这些Native模块就行了。

在Android中也大量使用了JNI技术。



0 0