1.背景
android NDK可以用来编译android的native方法,也可以将c和c++的代码编译成.so文件,让android程序运行。
2.NDK安装(linux环境)
(1)下载对应的ndk版本,在shell里输入如下命令
gedit ~/.bashrc
(2)打开bash文件,添加下载的ndk路径
NDKROOT=/home/CORPUSERS/28852262/android-ndk-r9c export PATH=$NDKROOT:$PATH
(3)输入如下命令,然后重启shell
source /etc/profile
(4)在shell中输入ndk-build,出现如下状态说明安装成功
3.jni第一个demon helloworld
(1)编写hello-jni.c文件。
#include <string.h> #include <jni.h> /* This is a trivial JNI example where we use a native method * to return a new VM String. See the corresponding Java source * file located at: * * apps/samples/hello-jni/project/src/com/example/hellojni/HelloJni.java */ jstring Java_com_example_hellojni_HelloJni_aa( JNIEnv* env, jobject thiz ) { #if defined(__arm__) #if defined(__ARM_ARCH_7A__) #if defined(__ARM_NEON__) #define ABI "armeabi-v7a/NEON" #else #define ABI "armeabi-v7a" #endif #else #define ABI "armeabi" #endif #elif defined(__i386__) #define ABI "x86" #elif defined(__mips__) #define ABI "mips" #else #define ABI "unknown" #endif return (*env)->NewStringUTF(env, "Hello from JNI ! Compiled with ABI " ABI "."); }
这个c文件实现输出一个string型函数,注意这里
Java_com_example_hellojni_HelloJni_aa
我们创建android应用的时候包和函数命名要和这个对应,否则汇报错:native method is not found。如下图
查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/OS/extra/
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索android
, mips
, 文件
, so jni
, native
, android ndk
, ndk
, jni
, jni error
, jni封装
, android studio jni
, armeabi
, 输入
, define
defined
ndk jni、android jni ndk、jni和ndk的区别、ndk和jni、eclipse ndk 编译jni,以便于您获取更多的相关知识。