当.so文件不放置在默认位置(main下的jniLibs文件夹)时,需要手动配置CMakeLists.txt
cmake_minimum_required(VERSION 3.4.1)
find_library( log-lib
log )
#设置so库路径
set(my_lib_path ${CMAKE_SOURCE_DIR}/libs)
#将第三方库作为动态库引用
add_library( native-lib
SHARED
IMPORTED )
#指名第三方库的绝对路径
set_target_properties( native-lib
PROPERTIES IMPORTED_LOCATION
#这里将app下的libs作为.so库的目录,libnative-lib.so是自己so文件的名字
${my_lib_path}/${ANDROID_ABI}/libnative-lib.so )
#这里的操作是添加自己的so文件
add_library( # 自己命名的library,以libTest为例,使用时只需要调用System.loadLibrary("libTest")
libTest
# Sets the library as a shared library.
SHARED
# 自己的library目录,可添加多个
src/main/cpp/native-lib.c )
#链接所有的library
target_link_libraries( # Specifies the target library.
libTest
native-lib
${log-lib} )