天天看点

使用Android Studio进行NDK开发

NDK开发环境搭建

1.下载ndk-r10, 解压。下载地址

2.打开AS的设置页面,修改NDK的目录指向解压目录。

使用Android Studio进行NDK开发
使用Android Studio进行NDK开发

项目开发

1.在MainActivity中新建Native方法。

public native String getStringFromNative();

此处会显示为红色,不要担心,这不是报错。

2.Build –> Make Project,这一步是为了生成MainActivity对应的class文件,生成C的头文件时要用到。

3.打开命令行进入到yourapp/src/main目录下,用Javah命令生成C的头文件。

javah -d jni -classpath F:\SDK\sdk\platforms\android-23\android.jar; F:SDK\sdk\extras\android\support\v4\android-support-v4.jar; F:SDK\sdk\extras\android\support\v7\appcompat\libs\android-support-v7-appcompat.jar; ..\..\build\intermediates\classes\debug com.android.noflag.practicedemo.MainActivity

使用Android Studio进行NDK开发
  • 不要拷贝我的命令,其中可能含有HTML标签导致运行错误
  • v4不是必须的,不加有可能编译报错
  • 加v7包是因为我的Activity继承了AppcompatActivity
  • 最后一个分号后面的部分指向的是工程下面Build目录里的class,告诉javah根据什么生成c的头文件。

4.新建一个.c文件,把生成的头文件中的c方法拷贝进去,并修改。

使用Android Studio进行NDK开发
使用Android Studio进行NDK开发

5.修改MainActivity,载入类库。

使用Android Studio进行NDK开发

6.修改app的build.gradle,在defaultConfig下增加NDK分支。

使用Android Studio进行NDK开发

7.修改gradle.properties,增加

android.useDeprecatedNdk=true

使用Android Studio进行NDK开发

这个地方不是很明白,谷歌说1.3之后完全支持NDK的开发,不知道为什么编译的时候还是不通过。

8.build–>Rebuild Project,生成.so c库。

使用Android Studio进行NDK开发

9.运行程序,完成。

使用Android Studio进行NDK开发

如有不对的地方,欢迎大家拍砖。

学习过程中参考了两篇不错的博客,写下来跟大家分享。

http://blog.csdn.net/u014657752/article/details/48107371

http://blog.csdn.net/sodino/article/details/41946607