ndk 环境:
下载完毕后解压,将目录加入系统环境变量path中
android studio:
在local.properties中添加ndk.dir=E\:\\ndk\\android-ndk-r10b(NDK目录)
在module中的build.gradle中节点defaultConfig添加
ndk{
moduleName "MyJniStr" //设置库(so)文件名称
abiFilters "armeabi", "armeabi-v7a","arm64-v8a", "x86", "x86_64", "mips", "mips64"
}
Android.mk:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_LDLIBS := -lm -llog
LOCAL_MODULE := subprocess
LOCAL_SRC_FILES := subprocess.c
include $(BUILD_SHARED_LIBRARY)
LOCAL_MODULE := demo //要生成的so库的名称,但实际为libdemo.so
LOCAL_SRC_FILES := demo.c //要使用的文件,刚才编写的demo.c文件
生成.h文件:
javah -jni com.example.administrator.myjniapplication.MainActivity
注意在class文件夹一级目录下操作
生成so文件:
cd进入jni目录,ndk-build即可
下载完毕后解压,将目录加入系统环境变量path中
android studio:
在local.properties中添加ndk.dir=E\:\\ndk\\android-ndk-r10b(NDK目录)
在module中的build.gradle中节点defaultConfig添加
ndk{
moduleName "MyJniStr" //设置库(so)文件名称
abiFilters "armeabi", "armeabi-v7a","arm64-v8a", "x86", "x86_64", "mips", "mips64"
}
Android.mk:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_LDLIBS := -lm -llog
LOCAL_MODULE := subprocess
LOCAL_SRC_FILES := subprocess.c
include $(BUILD_SHARED_LIBRARY)
LOCAL_MODULE := demo //要生成的so库的名称,但实际为libdemo.so
LOCAL_SRC_FILES := demo.c //要使用的文件,刚才编写的demo.c文件
生成.h文件:
javah -jni com.example.administrator.myjniapplication.MainActivity
注意在class文件夹一级目录下操作
生成so文件:
cd进入jni目录,ndk-build即可