1、在Android Studio 中创建一个项目,项目配置中新建一个类(Activity或者任意一个类)。
在新建的类中定义本地的方法:
<span style="font-family:SimSun;font-size:18px;">public native String getStringFromNative(); </span>
2、生成.class文件
build -> Make Project 编译生成.class文件。.class文件的路径:项目目录\build\app\build\intermediates\classes\debug
3、打开Android Studio的终端Terminal控制台
cd app\src\main 为了编译的.h头文件生成在改路径下
4、javah生成.h头文件
javah -d jni -classpath <SDK中Android版本编译工具.jar路径>;<debug路径> <package包名><.类名>
javah -d jni -classpath "D:\Android\Android SDK\platforms\android-22\android.jar";..\..\build\intermediates\classes\debug org.li.MainActivity
注意点:SDK中的.jar路径如果包含空格需要加""
..\..\为上上级路径 包名.类名
然后就会发现在main目录下多了一个jni文件夹,里面有生成好的头文件,
在jni目录下新建一个 .c文件。来实现头文件里面声明的方法。
在 local.properties 文件中设置ndk的路径:
ndk.dir=C\:\\android-ndk-r10e
5、
在app目录下的 build.gradle中设置库文件名(生成的so文件名):
找到 defaultConfig 这项,在里面添加如下内容:
<span style="font-family:SimSun;">ndk{
<span style="white-space:pre"> </span>moduleName "MyJni" //设置库(so)文件名称
}</span>