原来的网址:http://jingyan.baidu.com/article/63f236280b90690208ab3d12.html
ndk编译静态库的方法主要有三种:
1、把代码放到:“D:\Android\android-ndk-r9d\sources”下面跟系统的 NDK_MODULE_PATH 一起编译;
2、放到用户自己工程对应的jni目录下面
3、直接生产静态库
方便他人亦是方便自己,如果觉得还行就点下赞吧,这样可以帮助其他人更快的找到解决问题的方法;有疑问的也可留言哦, 谢谢!
代码和视频百度云地址:http://pan.baidu.com/s/1mgkJXVi
方法/步骤
-
一、将代码放到 “D:\Android\android-ndk-r9d\sources”下面:
如在“"D:\Android\android-ndk-r9d\sources\third_party\libCode1\fkCode.cpp"”中添加代码:
int fkLibCode1()
{
return 100;
}
-
在“"D:\Android\android-ndk-r9d\sources\third_party\libCode1\Android.mk"”中增加:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE:= code
LOCAL_SRC_FILES:= fkCode.cpp
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)
include $(BUILD_STATIC_LIBRARY)
-
新建一个 android 工程如:“LibComplie”,右键工程 Android Tools 下面的 Add Native Support,在工程目录下的jni下的android.mk 添加如下:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := LibComplie
LOCAL_SRC_FILES := LibComplie.cpp
LOCAL_STATIC_LIBRARIES := code
include $(BUILD_SHARED_LIBRARY)
$(call import-module, third_party/libCode1)
-
Ctrl+B编译,便可以再 工程目录obj下看到生产的静态库, .a文件,如图:
-
二、放到用户自己工程对应的jni目录下面:
将“"D:\Android\android-ndk-r9d\sources\third_party\libCode1"”目录剪切到自己的工程目录jni\libsrc下面如:
-
在android.mk中增加:
$(call import-add-path,$(LOCAL_PATH)/libsrc)
将 当前工作目录下的 libsrc 路径添加到 NDK_MODULE_PATH 环境变量中,后编译(Ctrl+B),结果如下
-
三、 直接生产静态库:
直接把要生成的静态库的模块放到jni下面,然后编译,即可,如下:
-
目前知道的主要就是这三种方法