我尝试将导入的库添加到项目中,并将其链接到另一个库。
以下是cmakelists.txt中的部分代码:

add_library(native-lib SHARED ${sources})

add_library(imported-lib SHARED IMPORTED)

set_target_properties(imported-lib PROPERTIES IMPORTED_LOCATION   ${CMAKE_CURRENT_LIST_DIR}/PathToLibs/${ANDROID_ABI}/imported-lib.so)

在我的本地lib中,我创建了一个类的对象,该对象放在导入的lib中,但是应用程序开始崩溃。(如果我调试或运行应用程序,则使项目正常工作)
在gradle控制台中,我得到了一个信息:[org.gradle.api.task]externalnativebuilddebug:没有生成目标导入的库,因为它没有生成命令
我该怎么建?

最佳答案

共享库当前需要手动打包到apk中,一种方法是将jnilib路由到共享库目录。希望以后的版本可以自动打包。这里有一个例子,https://github.com/googlesamples/android-ndk/tree/master/hello-libs,它导入一个共享库,一个静态库;共享库用app/build.gradle:jnilibs.srcdirs=['../distribution/gperf/lib']

10-07 17:44