当初有听说过这个问题。好像是不好用。不过我建议你参考two-lib的例子LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := libtwolib-first LOCAL_SRC_FILES := first.cinclude $(BUILD_STATIC_LIBRARY)# second lib, which will depend on and include the first one include $(CLEAR_VARS) LOCAL_MODULE := libtwolib-second LOCAL_SRC_FILES := second.c LOCAL_STATIC_LIBRARIES := libtwolib-firstinclude $(BUILD_SHARED_LIBRARY)标红处的stattic 改为shared 试试
注意你把别人给你的so放到你的项目的 libs/armeabi 目录下(建一个这样的目录),名称是叫libXXXXX.so,那个XXXXX是你System.loadLibrary("XXXXX")的名称。
然后再libA.so里面调用和libA.so同目录的libB.so里面函数的demo吗 谢谢!
当初有听说过这个问题。好像是不好用。不过我建议你参考two-lib的例子LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := libtwolib-first
LOCAL_SRC_FILES := first.cinclude $(BUILD_STATIC_LIBRARY)# second lib, which will depend on and include the first one
include $(CLEAR_VARS)
LOCAL_MODULE := libtwolib-second
LOCAL_SRC_FILES := second.c
LOCAL_STATIC_LIBRARIES := libtwolib-firstinclude $(BUILD_SHARED_LIBRARY)标红处的stattic 改为shared 试试
1) 在JNI文件里通过dlopen函数显示的调用第三方SO库;
2) 在Android.mk文件里添加
LOCAL_STATIC_LIBRARIES := **** 或者: LOCAL_SHARE_LIBRARIES := ****