JNI技术

Posted zhou2lin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JNI技术相关的知识,希望对你有一定的参考价值。

1、什么事JNI技术

JNI是Java Native Interface的缩写,它提供了若干的API实现了Java和其他语言的通信(主要是C&C++)。从Java1.1开始,JNI标准成为java平台的一部分,它允许Java代码和其他语言写的代码进行交互。

2、怎么用JNI技术

你可以使用JNI来实现“本地方法”(native methods),并在JAVA程序中调用它们。
JNI支持一个“调用接口”(invocation interface),它允许你把一个JVM嵌入到本地程序中。本地程序可以链接一个实现了JVM的本地库,然后使用“调用接口”执行JAVA语言编写的软件模块。例如,一个用C语言写的浏览器可以在一个嵌入式JVM上面执行从网上下载下来的applets。

3、JNI的优缺点

一旦使用JNI,JAVA程序就丧失了JAVA平台的两个优点:
1、程序不再跨平台。要想跨平台,必须在不同的系统环境下重新编译本地语言部分。
2、程序不再是绝对安全的,本地代码的不当使用可能导致整个程序崩溃。一个通用规则是,你应该让本地方法集中在少数几个当中。这样就降低了JAVA和C之间的耦合性

以上是关于JNI技术的主要内容,如果未能解决你的问题,请参考以下文章

JNI

JNI技术。开发时在Android或Linux平台上,所以呢?

密集计算场景下的 JNI 实战

Android Studio下Java Jni技术

移动安全技术-Java调用C函数_JNI

Android高级NDK/JNI编程技术基础介绍