android ndk生成so库

android ndk利用android.mk生成so库

1.创建一个java类加载需要创建的库
public class JniUtil {
  static {
    System.loadLibrary("test");
  }
  public native String getStringJNI();
}
2.在Terminal下输入命令自动生成头文件
  • 进入java目录:cd app/src/main/java
    在这里插入图片描述
  • 生成头文件 :javah -jni -encoding utf-8 包名+类名
    在这里插入图片描述
    结果:
    android ndk生成so库_第1张图片
    生成的头文件:
    android ndk生成so库_第2张图片
3.在app目录下创建一个jni文件,将生成的.h文件复制到jni目录下
  • 然后创建一个.c文件
    android ndk生成so库_第3张图片
4.创建并编辑Android.mk,Application.mk
  • Android.mk
#Android.mk
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)

LOCAL_MODULE := test //库名
LOCAL_SRC_FILES :=demo.c //用到的.c文件
include $(BUILD_SHARED_LIBRARY)
  • Application.mk
APP_PLATFORM := android-16
APP_ABI := all
5.在 Terminal 配合app目录下输入 ndk-build 进行编译

android ndk生成so库_第4张图片
生成图:
android ndk生成so库_第5张图片

下一篇:Android利用cmake调用第三方so库配合.h文件,进行so库第二次封装

你可能感兴趣的:(Android,JNI开发)