博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android使用JNI调用C,C++
阅读量:5972 次
发布时间:2019-06-19

本文共 861 字,大约阅读时间需要 2 分钟。

android环境下cdt的安装和NDK的配置也就不说了,有很多这样的博客文章进行讲解,现在我要说的就是通过JNI来调用C函数和C++函数。

首先,新建普通的android程序。我们姑且命名为JNITest

新建完成之后,即为普通的android项目

现在就开始我们的JNI之旅:

(一)、JNI调用C函数

1:在项目目录下新建一个jni文件夹如图

2:在jni文件夹下新建一个.c文件,姑且命名为hello.c

3:键入以下代码(后面会有讲解)

#include <jni.h>

jstring Java_com_example_jnitest_MainActivity_HelloJni(JNIEnv *env,jobject obj)

{

  return (*env)->NewStringUTF(env,"Hello World!!");

}

备注:

(1)、头文件  #include <jni.h>

头文件位置定义在 android-ndk-r9c\platforms\android-5\arch-arm\usr\include目录下

含有以下方法:

jstring     (*NewString)(JNIEnv*, const jchar*, jsize);

jsize       (*GetStringLength)(JNIEnv*, jstring);

const jchar* (*GetStringChars)(JNIEnv*, jstring, jboolean*);

void        (*ReleaseStringChars)(JNIEnv*, jstring, const jchar*);

jstring     (*NewStringUTF)(JNIEnv*, const char*);

jsize       (*GetStringUTFLength)(JNIEnv*, jstring);

(由于文字限制,下一篇接着讲解)

转载于:https://www.cnblogs.com/bobo1223/p/7287669.html

你可能感兴趣的文章
在业务过程中使用区块链和智能合约
查看>>
驾驶无人机也要考执照了,“黑飞”可能刑拘
查看>>
在虚拟现实中解谜,PSVR游戏《Statik》将于4月24日正式发售
查看>>
正数阶乘结尾0的个数
查看>>
SQL SERVER2008及以上版本数据库自动备份的三种方法
查看>>
秒杀于丹、蒋勋、蒙曼,每篇都有10万+的潜质。《六神磊磊读唐诗》,5星。
查看>>
利用日志记录所有LINQ的增,删,改解决方案
查看>>
实例讲解PostSharp(一)
查看>>
graylog 客户端的安装配置
查看>>
CentOS6.4_X86_64 安装Drupal-7.31必须成功版!
查看>>
驱动学习之驱动和应用的接口
查看>>
hbase region split源码分析
查看>>
MySQL备份之分库分表备份脚本
查看>>
Java 与 Netty 实现高性能高并发
查看>>
SurfControl人工智能新突破 领跑反垃圾邮件
查看>>
一个动态ACL的案例
查看>>
RSA加密
查看>>
「镁客·请讲」小乔跑步机潘忠剑:打通产品供应链,用创新建立品牌优势
查看>>
PHP编译,执行make报错
查看>>
Linux system log avahi-daemon[3733]: Invalid query packet
查看>>