我试图按照文档CMakeList.txt中给出的步骤添加预构建库:
add_library( mylib
SHARED
IMPORTED )
set_target_properties( mylib
PROPERTIES IMPORTED_LOCATION
$libpath )
target_link_libraries(native-activity
android
mylib
log)但我错了:
致命异常:主进程: com.example.native_activity,PID: 32690 java.lang.UnsatisfiedLinkError:无法加载本机库java.lang.UnsatisfiedLinkError dlopen失败:未找到库"libselinux.so“
甚至我也提取了apk,却找不到so文件。我是不是漏掉了什么
发布于 2017-06-21 03:52:49
您缺少的是试图将共享库mylib链接到native-activity共享库。为了加载mylib库,还必须将其打包到.apk中。只需将此代码添加到本机_ code _path/build.gradle中即可:
android {
sourceSets{
main.jniLibs.srcDirs = ['path_to_mylib']
}
}发布于 2018-05-17 20:17:09
您确定您的库在/data/app/com.example.native_activity-1/lib/arm/libnative-activity.so而不是data/app/com.example.native_activity-1/lib/arm/libnative-activity.so中吗?似乎您指定的是绝对路径,而不是相对路径。
https://stackoverflow.com/questions/44649077
复制相似问题