2011.12.05(3)——— android JNI学习之二 调用第三方动态库
动态库和静态库 我觉得两种不同
1、动态库是.so文件,静态库是.a文件
2、动态库的话 你需要第三方库和你自己的so库,静态库 只需要你自己的就行,已经包含到你的so库里面去了
我不是学c的 所以 可能说的不对 大家见谅
我在开发过程中发现 动态库的调用有两种方法
libaaa.so是我的第三方so库,libtest是我生成的so库
1、lib下面生成一个so
#LOCAL_PATH := $(call my-dir)#LOCAL_MODULE := libtestLOCAL_SRC_FILES := com_lp_jni_Test.cLOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llogLOCAL_LDLIBS += -L$(LOCAL_PATH)LOCAL_LDLIBS += -laaainclude $(BUILD_SHARED_LIBRARY)
这个会在lib下面生成一个so 就是你自己的so 但是 你用的时候 也需要把第三方so库放到你的工程里面
2、lib下面生成两个so
#LOCAL_PATH := $(call my-dir)#include $(CLEAR_VARS) LOCAL_MODULE := libmmm LOCAL_SRC_FILES := libaaa.so include $(PREBUILT_SHARED_LIBRARY) include $(CLEAR_VARS)LOCAL_MODULE := libtestLOCAL_SRC_FILES := com_lp_jni_JMedia.cLOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llogLOCAL_SHARED_LIBRARIES := libmmminclude $(BUILD_SHARED_LIBRARY)
这个会在你的lib下面生成两个so库 一个是第三方so库,一个是你自己的