序言
基礎版:https://blog.csdn.net/qq_41811438/article/details/103323128
升級版:https://blog.csdn.net/qq_41811438/article/details/103323497
這篇文章主要是在升級版的基礎上,進行完善。目前我覺得這樣的配置已經夠用了。以此作爲最終版,以備忘。
正文
1、CMakeLists.txt文件源碼如下:
cmake_minimum_required(VERSION 3.4.1)
set(LOCAL_MODULE DemoTest) # Specify the name of so that you will generate.
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/SharedLibs/${ANDROID_ABI})
include_directories(${PROJECT_SOURCE_DIR}/Math/inc)
aux_source_directory(${PROJECT_SOURCE_DIR}/Math/src SRC_FILES_LIST)
MESSAGE(STATUS "Jimmy:")
MESSAGE(STATUS ${SRC_FILES_LIST})
add_library(${LOCAL_MODULE}
SHARED
# Following , the same as LOCAL_SRC_FILES in Android.mk
JNI.cpp ${SRC_FILES_LIST})
target_link_libraries(${LOCAL_MODULE}
# Link the other so(dll).
log )
2、app目錄下的build.gradle文件配置:
//jimmy add for ndk specified //////////////////////////////////////////////////////
defaultConfig.externalNativeBuild.cmake{
abiFilters 'armeabi-v7a'
}
externalNativeBuild {
cmake {
path 'src/main/jni/CMakeLists.txt'
}
}
//////////////////////////////////////////////////////////////////////////////////////
備註:
MESSAGE(STATUS "Jimmy:" "hi" "world") MESSAGE(STATUS "Include Files Folders: " ${PROJECT_SOURCE_DIR})
用來打印信息,以便於發現宏值是否有錯!!!!
工程架構目錄,部分截圖:
---- The End.