
NDK/JNI/Cmake
desaco
技术,产品,运营。安卓应用研发10年+。服务过多家上市公司。
展开
-
JNI签名及深入理解JNI,JNI中的反射 - android
JNI开发中,你需要知道的一些建议- https://www.jianshu.com/p/09effb7ecde4JNI中的方法签名;JNI反射调用Java构造方法、成员方法和静态方法。> 深入理解JNI- https://blog.youkuaiyun.com/xsf50717/article/details/51598748JNI/Native(so文件):Java程序中的函数可以调用N...转载 2016-03-16 16:35:11 · 1471 阅读 · 0 评论 -
Android中JNI起源及存在的必要性
Android上层的Application和ApplicationFramework都是使用Java编写,底层包括系统和使用众多的LIiraries都是C/C++编写的。所以上层Java要调用底层的C/C++函数库必须通过Java的JNI来实现。 jvm何时退出?jni启动的jvm实例是作为子进程存在的,只要主进程仍然存在,那么jvm子进程就存在,不会退出,因此我们才不需要多次创建jvm实例原创 2016-03-14 10:26:55 · 985 阅读 · 0 评论 -
JNI两种注册,System.load()与System.loadLibrary()加载SO库
> System.load()与System.loadLibrary() ,System.loadLibrary()Android System.loadLibrary及JNI_OnLoad简介 --http://blog.youkuaiyun.com/myarrow/article/details/9718677System.load 和 System.loadLibrary详解-- http:/...转载 2018-04-27 17:26:37 · 4152 阅读 · 0 评论 -
JNI数据类型,语法与规范
Java Native Interface(JNI)是Java语言的本地编程接口,是J2SDK的一部分。在java程序中,我们可以通过JNI实现一些用java语言不便实现的功能。通常有以下几种情况我们需要使用JNI来实现。标准的java类库没有提供你的应用程序所需要的功能,通常这些功能是平台相关的你希望使用一些已经有的类库或者应用程序,而他们并非用java语言编写的程序的某些部分对速度要...转载 2018-05-11 22:34:14 · 643 阅读 · 0 评论 -
Cmake + CMakeLists.txt 编译SO库(JNI编译)
cmake android-ndk google demo- https://github.com/googlesamples/android-ndk 在Android Studio中使用C/C++库有两种方式:cmake和ndk-build。cmake是最新支持的方法,通过配置CMakeLists.txt文件来实现;ndk-build是传统的方式,通过配置Android.mk文件来实现。...转载 2018-04-19 15:34:49 · 4440 阅读 · 0 评论 -
手机的CPU架构简述及SO兼容(Android/iOS)及手机硬件等,手机IMEI
CPU(计算)+RAM(内存)+ROM(内置存储卡)+ GPU(图像处理等)等参数。 手机芯片制造商高通;英特尔Intel芯片,服务器芯片。> CPU类型与SO文件-- 手机的CPU,多核,32Bit CPU,64Bit CPU;Android 的ARM架构和X86架构- http://blog.youkuaiyun.com/victor_barnett/article/details/794...转载 2017-12-29 18:06:01 · 3984 阅读 · 1 评论 -
ndk-build + Android.mk + Application.mk编译JNI,及JNI HelloWorld篇
Android导入第三方静态库.a,编译成动态库.so。> NDK编译SO库eclipse中android NDK开发环境的搭建及编译SO库 - http://blog.youkuaiyun.com/wangzhen209/article/details/50312633Eclipse下用NDK编译生成so文件- http://blog.youkuaiyun.com/devilnov/article/det...转载 2016-04-06 10:08:30 · 1350 阅读 · 2 评论 -
JNI与C/C++的调用与封装(Demo应用)
项目中使用JNI的地方,如:核心逻辑,密钥,加密逻辑。JNI还有很多的应用,比如FFMPEG,OpenGL等。JNI常见的场景如:加解密算法,音视频编解码等。-- 使用JNI,复用很多优秀的c/c++代码:ffmpeg 多媒体播放器;opencv 图形识别引擎;7-zip 压缩;opencore 视频播放 C/C++实现的算法,JNI封装(SO文件,动态链接文件),Java、An...原创 2017-03-28 18:37:36 · 3624 阅读 · 0 评论 -
JNI字符串,数组,字段和方法,对象引用,异常处理,多线程,内存回收等
Android下的JNI创建多线程的方法- http://blog.youkuaiyun.com/panda1234lee/article/details/13503291问题1:JNIEnv是一个线程相关的变量;JNIEnv 对于每个 thread 而言是唯一的 ;JNIEnv *env指针不可以为多个线程共用解决办法:但是java虚拟机的JavaVM指针是整个jvm公用的,我们可以通过Ja转载 2017-06-04 21:08:25 · 1537 阅读 · 0 评论 -
JNI编程(C C++ JNI之间的调用)
> JNI 资源释放,获取上下文Context,加密JNI 资源释放- https://blog.youkuaiyun.com/ccm_oliver/article/details/12781319Android JNI获取上下文Context- https://blog.youkuaiyun.com/lb377463323/article/details/75315167Android学习JNI,使用JNI实现字...转载 2018-06-05 22:46:11 · 5707 阅读 · 0 评论