博客专栏  >  移动开发   >  JNI开发之旅

JNI开发之旅

带你走进JNI世界

关注
12 已关注
19篇博文
  • [JNI] 开发实例(2) 编译libwebsocket,封装jni函数,搭建IM通信基础服务

    WebSocket协议是基于TCP的一种新的协议。WebSocket最初在HTML5规范中被引用为TCP连接,作为基于TCP的套接字API的占位符。它实现了浏览器与服务器全双工(full-duplex...

    2017-04-08 16:55
    1237
  • [JNI]开发实例(1)封装libjpeg库 保证图片质量压缩图片

    为什么libjpeg这么好用,这里不做介绍了,自行去搜索很多blog有介绍,也可以反编译微信,淘宝等大厂app,你都会发现libjpeg.so的身影。直接上代码撸环境: android studio...

    2017-03-04 15:45
    862
  • [JNI]开发之旅(9)JNI函数字符串处理

    通过前面章节接触到字符串类型,知道字符串类型的数据是不能直接操作的。本节来介绍不能操作的原因及操作字符串的一些函数。JNI 把 Java 中的所有对象当作一个C指针传递到本地方法中,这个指针指向 JV...

    2017-01-01 13:43
    843
  • [JNI]开发之旅(8)传递参数给JNI函数

    本节将介绍在JNI编程中如何传递参数和返回值。首先要强调的是,native方法不但可以传递Java的基本类型做参数,还可以传递更复杂的类型,比如String,数组,甚至自定义的类。jni.h中定义了很...

    2017-01-01 00:34
    690
  • [JNI]开发之旅(7)JNI函数中调用java对象的方法

    在jni函数中我们不仅要对java对象的数据域进行访问,而且有时也需要调用java中类对象已经实现的方法。接下来我们对对象的方法调用,调用步骤与访问数据域相似。1.获得实例对应的class类 2.根据...

    2016-12-31 20:51
    746
  • [JNI]开发之旅(6)JNI函数中访问java类中对象的属性

    JNI函数的实现在c/c++中实现的,如果想访问java中定义的类对象的实例域需要三个步骤:1.通过GetObjectClass()函数获得该对象的类class,返回值是一个jclass; 2.调用...

    2016-12-25 12:28
    542
  • [JNI]开发之旅(5)访问c/c++函数

    前面介绍了那么多,不在废话,直接实例开撸,不懂步骤的请看: [JNI]开发之旅(1)开发流程介绍调用C++函数1.调用c++函数printf,输出一个hello JNIjava层: 定义一个JNIU...

    2016-12-24 20:33
    521
  • [JNI]开发之旅(4)项目架构介绍

    前面介绍了一个系列的c语言基础及jni相关类型字符定义,现在开始进入JNI开发主题。 首先,看一下项目的体系架构。项目分为3个部分:java部分,c/c++部分,以及一个makefile文件。jav...

    2016-12-24 19:16
    816
  • [JNI]开发之旅 (3)jni域描述符说明

    域描述符 类描述符 方法描述符前面一节介绍到相关数据类型映射,接下来介绍下描述符1.域描述符1、基本类型的描述符 java类型 feild描述 byte B char C s...

    2016-12-24 18:56
    844
  • [JNI] 开发之旅 (2)解释jni helloworld实例

    在上篇文章中已经介绍完jni开发的流程,实现了一个简单的hello world实例 接下来对这个实例中出现的关键词,函数进行解释。.h头文件通过javah生成的头文件//引入jni.h文件 #inc...

    2016-12-18 11:04
    296
  • [JNI] 开发之旅 (1)开发流程介绍

    通过上一个系列对c语言的熟悉,为jni开发打下基础,接下来就正式进入jni开发。JNI概念(Java Native Interface )java本地化接口 , 可以通过JNI调用系统提供的API ,...

    2016-12-17 23:05
    320
  • [JNI] 开发基础 (8)c语言typedef

    typedef 起别名,目的是为了编码方便。例如有一个结构体的名字是 stu,要想定义一个结构体变量就得这样写:struct stu stu1;struct 看起来就是多余的,但不写又会报错。如果为 ...

    2016-12-11 18:54
    242
  • [JNI] 开发基础(7)结构体

    基本定义:结构体,通俗讲就像是打包封装,把一些有共同特征(比如同属于某一类事物的属性,往往是某种业务相关属性的聚合)的变量封装在内部,通过一定方法访问修改内部变量。有点生硬,对于java程序员来说,结...

    2016-12-11 18:28
    230
  • [JNI] 开发基础(6)字符串相关操作

    撸代码时候字符串和数组是我们最常见的数据类型,要熟练使用c语言编程,字符串操作也要相当的熟练,这里介绍一些常见的字符串操作方法,不够完整,如果用到其他的方法可以查询 c语言字符串函数APIstrchr...

    2016-12-11 16:46
    235
  • [JNI] 开发基础(5)内存分配

    内存分配比较复杂,这里不做具体分析,可以看下这篇博客 分析的不错。静态分配与动态分配在C语言中,对象可以使用静态或动态的方式分配内存空间。静态分配:编译器在处理程序源代码时分配。动态分配:程序在执行时...

    2016-12-10 21:08
    327
  • [JNI] 开发基础(4)函数指针及指针函数

    函数指针指向函数的指针包含了函数的地址,可以通过它来调用函数,函数指针与指针函数的最大区别是函数指针的函数名是一个指针格式:类型说明符 (*函数名)(参数)void (*sum)();实例:求两个数中...

    2016-12-10 15:04
    245
  • [JNI] 开发基础(3)指针操作

    指针操作与指针变量相关-指针变量就是存放地址的变量。指针变量的引用主要涉及到两个方面:(1)对指针变量本身的引用,就是说对指针变量进行的各种运算(2)对指针变量所指向的目标,对指针进行引用。 通俗的...

    2016-12-10 13:53
    206
  • [JNI] 开发基础 (2) 指针

    指针是什么东西 指针处处在用,但是我们学习c语言时候,最难搞清楚的也是指针 一个生活中的例子:平时在淘宝上买东西,快递送到后,你不在家,那么快递员把快递寄送到门卫处,然后发短信通知你下班回家取。...

    2016-12-03 21:18
    198
  • [JNI] 开发基础(1) c语言基本类型

    头文件: 头文件引入,这个相当于java导入引用文件包,在编写的时候手动导入,有一部分ide会提示需要什么h文件#include #include #include #include hell...

    2016-12-03 18:20
    245
img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部