Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Studio正在将存根库捆绑到APK中 我使用Android Studio来构建一个本地C++项目。有一个依赖库(我们称之为lib.so),它需要与JNI库链接以解析它的一些符号。但是,我不希望将此库捆绑到APK中,因为这是一个存根库,仅用于链接目的。在我想要运行内置APK的Android设备上已经有了一个正确的lib.so和正确的符号定义_Android_C++_Android Studio_Cmake_Android Ndk - Fatal编程技术网

Android Studio正在将存根库捆绑到APK中 我使用Android Studio来构建一个本地C++项目。有一个依赖库(我们称之为lib.so),它需要与JNI库链接以解析它的一些符号。但是,我不希望将此库捆绑到APK中,因为这是一个存根库,仅用于链接目的。在我想要运行内置APK的Android设备上已经有了一个正确的lib.so和正确的符号定义

Android Studio正在将存根库捆绑到APK中 我使用Android Studio来构建一个本地C++项目。有一个依赖库(我们称之为lib.so),它需要与JNI库链接以解析它的一些符号。但是,我不希望将此库捆绑到APK中,因为这是一个存根库,仅用于链接目的。在我想要运行内置APK的Android设备上已经有了一个正确的lib.so和正确的符号定义,android,c++,android-studio,cmake,android-ndk,Android,C++,Android Studio,Cmake,Android Ndk,我正在导入存根库lib.so,以便与JNI库链接为: 添加库(已导入共享库) 设置_目标_属性(lib.so属性导入的_位置“LOCATION_of_lib.so”) 添加_依赖项(本机jni lib}) 目标链接库(本机jni库) 这样,APK编译是成功的,但是库被捆绑到APK中 我使用的是AS 4.0.1、NDK r19c、CMake 3.17。同一个项目过去按预期工作,也就是说,没有将库lib.so与APK绑定,但不知何故它开始绑定它。 任何调试此问题的线索都将不胜感激。请尝试使用查找库。

我正在导入存根库lib.so,以便与JNI库链接为:

添加库(已导入共享库) 设置_目标_属性(lib.so属性导入的_位置“LOCATION_of_lib.so”)

添加_依赖项(本机jni lib}) 目标链接库(本机jni库)

这样,APK编译是成功的,但是库被捆绑到APK中

我使用的是AS 4.0.1、NDK r19c、CMake 3.17。同一个项目过去按预期工作,也就是说,没有将库lib.so与APK绑定,但不知何故它开始绑定它。
任何调试此问题的线索都将不胜感激。

请尝试使用
查找库
。将预构建的
lib.so
(至少是坏名字
liba.so
)放入某个路径,并将其添加到
CMAKE\u FIND\u ROOT\u路径中

list(APPEND CMAKE_FIND_ROOT_PATH ${PREBUILT_LIBS_DIR}/${ANDROID_PLATFORM}/${ANDROID_ABI}/a)
它的外观示例:

~/my-proj/prebuilt-libs/android-28/x86/a/lib/liba.so
然后查找库并将其链接:

find_library(lib-a a)
target_link_libraries(native-jni lib-a)