android studio创建so库

来源:互联网 发布:k漫软件下载 编辑:程序博客网 时间:2024/06/05 08:47


AndroidStudio生成so库步骤及遇到问题

1下载ndk,版本最好在r9以上,我的版本为r15,为什么要在r9以上,据我查找到资料所述,r9+版本不需要创建cygwin这个东西了。

2打开AS,创建一个类

public classjniTest {
   
static{
        System.loadLibrary(
"jnidemo");
   
}
   
public nativeStringgetString();
}

3点击build->make project,生成class文件,生成的文件在project->app->build->intermediates->classes->debug中可以查看到

4View->Tool window ->Terminal中书写编译语句

首先cd到你想要编译之后所在的地方,然后javah –jni你的包名+类名

在你的cd路径去查看是否生成.h头文件

5main下创建jni包,包中存放两个文件,Android.mk.c文件

6创建.c文件,将.h头文件中的两个方法复制过来进行重写方法,别忘了引用名称 #include “你的头文件名.h”

7.Android.mk内容

LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE := 你的类名中static里存放的名称,我的是jnidemoLOCAL_SRC_FILES :=你的C文件名.cinclude $(BUILD_SHARED_LIBRARY)

8appbuild.gradle中添加

9gradle.properties末尾添加一句

android.useDeprecatedNdk=true

然后重新rebuid下就行了,如果不报错的话,生成so的路径为

Libobj中都生成才算对哦。

说下我的问题吧,就这个问题整了几天,最后查出sdk版本的问题,换了个低版本就ok了。

原创粉丝点击