Android开发社招面试经验,应广大粉丝要求讲解一下JNI的那些事 AndoridJNIBAT面试
程序员文章站
2022-05-22 17:06:17
...
ε=(´ο`*)))唉,今天周五了,不知道大家有没有这样一种心情,就是周五了周五了,实在是不想动,坐等休息,可是一想自己的事情搞完才不用加班,真的是纠结万分。想想不知道今天更新啥,就把之前整理的资料温习一遍和大家共同分享,讲解一下JNI的那些事
(含有从基础到进阶。含有BATJ.字节跳动面试专题,算法专题,高端技术专题,混合开发专题,java面试专题,Android,Java小知识,到性能优化.线程.View.OpenCV.NDK等应有尽有。还有辅之相关的视频+学习笔记)
(更多完整项目下载。未完待续。源码。图文知识后续上传github。)
可以点击关于我联系我获取完整PDF
(VX:mm14525201314)
1丶说一下对JNI的理解
Java 的优点是跨平台,但也因为其跨平台的的特性导致其本地
交互的能力不够强大,一些和操作系统相关的的特性 Java 无法
完成,于是 Java 提供 JNI 专门用于和本地代码交互,通过
JNI,用户可以调用 C、C++编写的本地代码
NDK 是 Android 所提供的一个工具集合,通过 NDK 可以在
Android 中更加方便地通过 JNI 访问本地代码,其优点在于
- 提高代码的安全性。由于 so 库反编译困难,因此 NDK
提高了 Android 程序的安全性 - 可以很方便地使用目前已有的 C/C++开源库
- 便于平台的移植。通过 C/C++实现的动态库可以很方便
地在其它平台上使用 - 提高程序在某些特定情形下的执行效率,但是并不能明
显提升 Android 程序的性能
2、如何加载 NDK 库 ?如何在 JNI 中注册 Native 函数,有几种注册方法 ?
public class JniTest{
//加载 NDK 库
static{
System.loadLirary("jni-test");
}
}
注册 JNI 函数的两种方法:
静态方法
动态注册
请查看完整的PDF版
(更多完整项目下载。未完待续。源码。图文知识后续上传github。)
可以点击关于我联系我获取完整PDF
(VX:mm14525201314)
上一篇: 顺治真的把老妈孝庄太后嫁给多尔衮了?
下一篇: js正则表达式企业级应用实例