栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Android JNI简单介绍

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Android JNI简单介绍

JNI

JNI : java native interface,实现JAVA和本地语言的相互互调

JNI作用:

C 可以操作硬件,使用JNI可以是java操作硬件C 直接运行在底层,C被编译为机器码,效率高C 开源项目,opencv:视觉库 ffmpeg --> 使用JAVA访问C优秀的开源项目安全考虑 交叉编译

平台
cpu : x86(pc)、arm(android最多)、 mips
操作系统 : windows、linux、mac os、unix

NDK : native develop kit,交叉编译工具

NDK目录

docs      >> 文档
samples   >> 样例
platforms >> 不同androidAdi版本,每个版本都有不同cpu架构的文件夹
include   >> android做jni开发相关的头文件
lib	      >> google编译好的jni开发可能用到的函数库
toolchains  >> 交叉编译工具链
bulid/tools .sh   >>  linux的批处理命令,通过这些命令调用交叉编译工具
ndk-build.cmd     >>  通过这个命令开启交叉编译,需配置环境变量
JNI目录
    C源代码
jstring Java_包名_类名_方法名(JNIEnv* env, jobject thiz)
    Android.mk
    告诉编译器.c的源代码的位置,要生成的文件名,要创建的文件类型。Application.mk
    要编译出来的文件支持的平台。

Java代码

public native String hello(); // java本地方法
System.loadLibarary("hello"); // 加载.so文件
// 生成C调用JAVA的方法签名. 进入到bin/classes目录下
javap -s org.grass.Stu
// JAVA native 方法,生成头文件. 进入到项目src目录下。按C函数的命名规则生成
javah org.grass.Stu
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/736820.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号