当前位置:阳光沙滩 >Android > 查看文章
阿里云优惠码

1.什么是JNI

对于一门技术來說,我们都要知道是什么?有什么用?怎么用?

JNI是什么呢?其实JNI就是java native interface。这是原单词是吧,翻译過來就是:java 本地接口,再翻译一下就是java调用C语言类库。

为什么在android里java需要调用这個C语言的类库呢?这就要回到我们小时候学习的android开发啦,看看android系统的架构吧!

来,看一下吧,有沒有找回童年的感觉呢?图片來自网络,在此谢過啦!

 

android_framework

有沒有感觉生活又美好了一些呢?是吧!我们可以从我们的里头,也就 是这個安卓系统里,找到这个lib库,都是xxx.so这样的so库,其实这些不是java语言写的,用C/C++,那么我们要用这個java去调用呢,就需要使用到JNI技术啦!

当然,这种是想通的,既然你Java可以调用这個C/C++语言,反過來,这個C/C++语言也可以调用java使用。实际上这個JNI就相当于这個翻译啦!

2.JNI有什么用?

用的话可多了哈,嘻嘻!系统的底层,直接与硬件交互的话,用汇编写,然后再上一层呢,基本上用这個C/C++写的。这样子,效率比较高,离这個硬件越近的语言,效率就越高。比如說,驱动嘛,我们有用過java写驱动嗎?沒有吧,哈哈!当然,我们还可以使用C/C++语言进行加密,直接用这個java调用。另外,可以重复使用代码,C语言出生比较早,写了好多代码吧,有很多東西是开源,免费的,哥们,別浪费呀!所以呢,这时,我也们可以使用这個Java來调用相关的类库。

3.JNI怎么用?

对于怎么用这個事,对吧,现在你知道这個java代码怎么写了,那么你调用的话,是不是要知道怎么翻译呀,你再牛一点的话,是不是要知道这個C语言代码怎么写呢?是吧!

因此呢!你需要掌握java语言,了解C语言,或者掌握C/C++语言。

你还需要掌握整个java调用这個类库的流程,最后当然就是,这個开发环境啦。

NDK,也就是Native develop kits

这就是开发环境啦!

本文链接:http://blog.sunofbeaches.com/archives/466 转载请注明出处.
如果喜欢:点此订阅本站
7K
相关文章
为您推荐
各种观点