
JNI&NDK
子云心
这个作者很懒,什么都没留下…
展开
-
Android中JNI&NDK入门(四) 之 使用CMake方式编译NDK
1 前言我们在前面几篇文章中对JNK/NDK做了一个入门的介绍,其中使用了Android.mk和Application.mk本地配置的方式进行NDK开发。但是其实在Android Studio 2.2之后便加入了CMake方式来编译NDK代码。2 CMakeCMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。他能够输出各种各样的makefile或...原创 2019-07-17 16:35:40 · 2183 阅读 · 3 评论 -
Android中JNI&NDK入门(三) 之 动态注册Native函数
1 前言前面两篇文章中,已经对JNI有了一些介绍。现在我们来回顾一下,它主要是通过使用javac -h命令来生成了一个.h的头文件,来产生Java和Native两边方法函的注册关联。这样当Java代码中去执行Native方法的时候,就会通过两边的关联的映射关系来找到这些Native真正实现的地方。事实上,JNI有两种关联Native方法的途径,分别是静态注册和动态注册。2 注册方式2....原创 2019-03-20 15:52:27 · 1189 阅读 · 0 评论 -
Android中JNI&NDK入门(二) 之 Java与Native相互调用
我们在上一篇文章《Android中JNI&NDK入门(一) 之 初识NDK和JNI》中已经通过Demo演示了如何在Java代码中去调用C++代码,今天继续来看看在JNI中是如何反调用Java方法的。先大概提一下,JNI中要调用Java方法的流程是先通过类名找到类,然后再根据方法名找到方法的id,最后就可以调用这个方法了。如果是调用Java中的非静态方法,那么就需要先构造出类的对象后才能调用...原创 2019-03-19 18:34:39 · 1005 阅读 · 0 评论 -
Android中JNI&NDK入门(一) 之 初识NDK和JNI
1 NDKNDK全称是Native Develop Kit,翻译作原生开发工具包。它允许你为Android使用C/C++代码来实现应用程序的功能。换言之Android的SDK之外,有一个工具叫NDK,用于进行C/C++的开发。一般情况,是用NDK工具把C/C++编译为.co文件,然后在Java中调用。NDK 可能不适合大多数 Android 编程初学者,这些初学者只需使用 Java 代码和框架...原创 2019-03-19 18:34:29 · 2036 阅读 · 4 评论