首页 > 技术文章 > Android Studio NDK初探

ithaibo-sit 2016-06-20 19:21 原文

Android Studio中实现NDK开发较之前Eclipse+Cygwin,方便了很多。

本文以最简单的从C程序中获取字符串,并显示到MainActivity的TextView上为例进行NDK开发的基本流程。

 

准备

NDK开发环境

  在安装好的Android Studio上,在SDK Manager中进行NDK的下载安装;或直接去https://developer.android.com/ndk/downloads/index.html上下载对应的安装包,并解压到sdk的ndk-bundle下。

  设置相关的环境变量,建议将android-v7, v4等工具也添加到环境变量中。

实现步骤

  创建Project

 

  在app下创建一个名为jni的目录(依次点击:new folder jni-folder)

 

  在gradle_properties文件中加入:android.useDeprecatedNdk=true

 

  创建一个类NdkUtil,在其中声明native方法

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

 

  在terminal中使用命令行,在app\build\intermediates\classes\debug下,使用javah -jni lab.example.NdkUtil[根据实际情况而定]。在该目录下回产生一个.h文件,打开该文件后,复制其中的内容。

  

  

  在app目录下新建一个jni目录(new folder jni-folder),并创建一个C文件,粘贴.h中的内容。并作相应的修改。

 

 

  在app module目录下的build.gradle中,找到gradle文件的defaultConfig,添加ndk配置信息
  ndk{
    moduleName "YourJniLibName"
    abiFilters "armeabi", "armeabi-v7a", "x86"
  }

 

  

  在代码NdkUtil中加载给类库YourniLibName:
    static{
      System.loadLibrary("YourJniLibName");
    }

 

  编译,运行:

 

推荐阅读