`

2011.12.05(3)——— android JNI学习之二 调用第三方动态库

阅读更多
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    := libtest
LOCAL_SRC_FILES := com_lp_jni_Test.c

LOCAL_LDLIBS    += -L$(SYSROOT)/usr/lib -llog

LOCAL_LDLIBS	+= -L$(LOCAL_PATH)
LOCAL_LDLIBS    += -laaa


include $(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    := libtest
LOCAL_SRC_FILES := com_lp_jni_JMedia.c

LOCAL_LDLIBS    += -L$(SYSROOT)/usr/lib -llog

LOCAL_SHARED_LIBRARIES := libmmm


include $(BUILD_SHARED_LIBRARY)


这个会在你的lib下面生成两个so库 一个是第三方so库,一个是你自己的





分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics