我正在尝试将so文件(这是一个已经编译的原生C/C++代码)加载到我的Android应用程序中,但是它不起作用(抛出异常,应用程序停止工作)。
E/AndroidRuntime:致命异常:线程-685进程: com.dsyr.selftoidcardmatcherdemo,PID: 11990 java.lang.UnsatisfiedLinkError:
如果我将targetSdkVersion改为21,那么它运行得很好。那么,在targetSdkVersion 26中,库不能加载的原因是什么?在第26版中,我们还有什么额外的事情要做吗?
发布于 2017-09-04 05:25:51
我也面临着同样的问题,我尝试删除所有64位库,只留下32位库:
在应用中

.mk:
APP_API := armeabi armeabi-v7a x86 mipsapp分级
defaultConfig {
ndk {
abiFilters "armeabi", "armeabi-v7a", "x86", "mips"
}
}gradle.properties
android.useDeprecatedNdk=trueAndroid.mk
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := Native
LOCAL_SRC_FILES := ../cpp/native.cpp // your native c++ file
LOCAL_C_INCLUDES := ../cpp/native-handler.h //if u have header File
LOCAL_LDLIBS := -lz -llog -ljnigraphics
include $(BUILD_SHARED_LIBRARY)它将使用64位的32位库。
https://stackoverflow.com/questions/45955883
复制相似问题