有什么区别:
- 使用 dlfcn.h 中提供的 dlopen() 加载共享库
- 在构建可执行文件时在 Android.mk 文件中包含共享库。
代码示例:Android.mk 文件:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES:= \
test.c
LOCAL_SHARED_LIBRARIES := \ libtest
LOCAL_MODULE:= test
LOCAL_MODULE_TAGS := eng
LOCAL_MODULE_PATH := $(TARGET_OUT_OPTIONAL_EXECUTABLES)
include $(BUILD_EXECUTABLE)
在执行上述两种方法时,哪种方法更好/更有效?