android studio 和 eclipse jni的配置和编译

1android studio

1.在Java里面写个类,这个类跟普通的Java类一样,不过这个类的方法修饰符必须加上static

public class JNI {
        static {
                System.loadLibrary("hello-jni");
        }
        //本地方法获得字符串,本地方法由c/c++实现
        public static native String helloFromC();
}


2.找到as的导航栏的build->make module'app' (编译.java 文件到app/build/intermediates/classes/debug里面)


3.找到as的命令行输入javah com.example.aplex.jnidemo.JNI (com.example.aplex.jnidemo是你的包命,JNI是你的类名)。你会在app/build/intermediates/classes/debug下面发现多了一个.h文件。在app/src/main下面新建一个名为jni文件夹,然后把.h文件复制进去,创建.c文件把刚刚复制进来的.h文件的内容复制到.c文件中,并且实现里面的函数

jstring Java_com_example_aplex_jnidemo_JNI_helloFromC(JNIEnv *env, jclass obj){
    char buf[] = "Hello world from C!";
//env调用struct JNINativeInterface中的函数指针
//实现转换c里面的char *字符串为java中的String对象
    return (*env)->NewStringUTF(env, buf);
}



4.在gradle里面配置

defaultConfig {
        applicationId "com.example.aplex.jnidemo"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
        ndk{
        //指定生成模块名字,也就是最终的动态库名hello-jni,相应库文件名libhello-jni.so moduleName "hello-jni"
            moduleName "hello-jni"
        // 指定生成哪些处理器架构的动态库文件,如果要运行在x86架构处理器一定需要指定 abiFilters "armeabi" , "x86"
            abiFilters "armeabi" , "x86"
        }

    }




二、Eclipse

转载 http://blog.csdn.net/dengshengjin2234/article/details/10046809

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值