当前位置:   article > 正文

【Android】Android Studio NDK 开发_ndk的版本android-studio是匹配的

ndk的版本android-studio是匹配的

个人博客:
http://www.milovetingting.cn

Android Studio NDK 开发

记录在Android Studio中NDK简单开发的步骤

用到的Android Studio版本为3.5。

配置NDK

下载NDK

一般在SDK下已经有自带的ndk文件夹,如sdk目录下的ndk-bundle文件夹。

ndk.png

如果没有,可以在SDK Manager中下载

ndk2.png

下载LLDB、NDK两项

下载完成后,可以在sdk目录下看到ndk的文件夹

ndk3.png

配置环境变量

我的电脑-属性-高级系统设置-环境变量

新建一个ANDROID_NDK变量,配置上ndk文件夹的位置(在这个文件夹下可以看ndk-build.cmd等文件)

ndk4.png

然后将这个变量加入到path变量中

ndk5.png

生成SO库

新建一个Hello.java文件,里面增加一个本地方法

public static native String hi();
  • 1

执行Build-Make Project,在app\build\intermediates\javac\debug\classes目录下执行以下cmd命令生成头文件:

javah -jni com.wangyz.ndk.Hello
  • 1

在该目录下,可以看到生成的com_wangyz_ndk_Hello.h文件。

在app/src/main/目录下新建jni目录,将生成的头文件复制到jni目录下。

在jni目录下新建com_wangyz_ndk_Hello.c文件,编写C语言实现代码:

#include "com_wangyz_ndk_Hello.h"

JNIEXPORT jstring JNICALL Java_com_wangyz_ndk_Hello_hi
  (JNIEnv *env, jclass clazz){
  return (*env)->NewStringUTF(env,"Hello");
  }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

在jni目录下新建Android.mk文件,内容如下:

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)

LOCAL_MODULE := Hello
LOCAL_SRC_FILES := com_wangyz_ndk_Hello.c
include $(BUILD_SHARED_LIBRARY)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

在jni目录下新建Application.mk文件,内容如下:

APP_ABI := all
  • 1

在该目录下执行cmd命令:

ndk-build
  • 1

执行后生成所需的so文件。

引用SO库

在app/src/main目录下新建目录jniLibs,将对应的so复制到该目录下:

ndk6.png

在Activity中引入:

static {
        System.loadLibrary("Hello");
    }
  • 1
  • 2
  • 3

使用SO库中的方法

String hi = Hello.hi();
Toast.makeText(getApplicationContext(), hi, Toast.LENGTH_SHORT).show();
  • 1
  • 2

Android Studio中NDK的简单开发到此结束。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/575214
推荐阅读
相关标签
  

闽ICP备14008679号