android中如何使用jni调用c代码

 时间:2026-02-15 06:03:11

1、步骤一:

在java中定义一个c方法的接口 ,相当于在java代码中定义了一个接口 接口的实现方法是C语言实现的。

public native String hello();

android中如何使用jni调用c代码

2、步骤二:

   实现C代码

   方法名 严格按照jni的规范

#include <stdio.h>

#include <jni.h> 

jstring Java_com_yys_helloworldformc_MainActivity_hello(JNIEnv* env,jobject obj){

    // 2 步 实现C代码

    // 返回一个java String 类型的字符串

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

    //(*env) 相当于 JNINativeInterface* JNIEnv

    //*(*env)  相当于 JNINativeInterface

    ///return (**env).NewStringUTF(env,"helloworldfromc");

    return  (*env)->NewStringUTF(env,"helloworldfromc");

}

3、步骤三:

   创建android.mk   告诉编译器 如何把c代码打包成函数库

   LOCAL_PATH := $(call my-dir)

    

   include $(CLEAR_VARS)

   # 对应打包成函数库的名字

   LOCAL_MODULE    := hello

   # 对应c代码的文件

   LOCAL_SRC_FILES := Hello.c

   include $(BUILD_SHARED_LIBRARY)

4、 步骤四:

    把c代码 打包成函数库  用到了安装的环境 到相应目录下使用ndk-build打包

5、步骤五:

    在java代码中 引入库函数 

static{

        System.loadLibrary("hello");// 注意事项 去掉前面的lib 后面的.so

         

    }

6、步骤六:

使用方法。

  • 基于ndk的jni调用
  • JNI中Java与C++交互
  • 使用Eclipse快速开发jni程序
  • Android JNI开发获取Java方法签名
  • android jni怎样封装蓝牙通信
  • 热门搜索
    黑龙江省旅游地图 上海春秋旅游 韩国旅游介绍 天津著名旅游景点 温州短途旅游 旅游 新闻 平谷旅游网 甘南 旅游 淘宝网旅游鞋 国庆旅游团购