AS——android NDK开发工具使用

在android studio上入手android NDK开发简单环境搭建

public class NdkJniUtils {
    public native String getCLanguageString();
}

Rebuild 工程,在app\build\intermediates\classes\debug\com\ndk\demo目录下生成NdkJniUtils.class文件;打开项目工程文件,cd 到 app\build\intermediates\classes\debug 目录,在当前目录打开cmd,输入:javah -classpath com.ndk.demo.NdkJniUtils
在app\build\intermediates\classes\debug 目录生成com_ndk_demo_NdkJniUtils.h文件
com_ndk_demo_NdkJniUtils.h

#ifndef _Included_com_ndk_demo_NdkJniUtils
#define _Included_com_ndk_demo_NdkJniUtils
#ifdef __cplusplus
extern "C" {
#endif
/*
 * Class:     com_ndk_demo_NdkJniUtils
 * Method:    getCLanguageString
 * Signature: ()Ljava/lang/String;
 */
JNIEXPORT jstring JNICALL Java_com_ndk_demo_NdkJniUtils_getCLanguageString
  (JNIEnv *, jobject);

#ifdef __cplusplus
}
#endif
#endif
  • 新建cpp文件
    在java同级目录中新建一个jni文件夹,把com_ndk_demo_NdkJniUtils.h文件拷贝到该文件夹下,再新建一个.cpp文件

com_ndk_demo_NdkJniUtils.cpp

#include "com_ndk_demo_NdkJniUtils.h"

JNIEXPORT jstring JNICALL Java_com_ndk_demo_NdkJniUtils_getCLanguageString(JNIEnv *ent, jobject object){
     return (*ent).NewStringUTF("This just a test for Android Studio NDK JNI developer!");//返回一个字符串
}
  • 配置环境,运行项目
    配置ndk,与配置SDK地址相同

在local.prperties中添加下面一行代码

ndk.dir=D\:\\android-ndk-r14b

在app下build.gradle文件中添加

  defaultConfig {

        ndk{
            moduleName "libtestjni"       //生成的so名字,自定义
            abiFilters "armeabi", "armeabi-v7a", "x86","arm64-v8a","mips","mips64","x86_64" 
        }
    }

在NdkJniUtils.java文件中导入本地库

 static{
        System.loadLibrary("libtestjni");//自己定义的so名字
    }

运行项目
在app\build\intermediates\ndk\debug\lib目录下生成一系列so文件
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值