我正在定义Application.mk APP_STL:= stlport_shared
当我运行ndk-build时,它会在obj / local / armeabi /中生成文件:stlport_shared.so 但它没有将此文件复制到libs / armeabi / 因此,它不会被复制到设备和 System.loadLibrary()抛出UnsatisfiedLinkError。
有人可以帮忙吗?
答案 0 :(得分:3)
应该在Application.mk中提到: APP_MODULES:= stlport_shared.so other_dependent.so
命令复制到设备。
答案 1 :(得分:0)
我相信您需要在Android.mk文件中包含以下内容:
include $(CLEAR_VARS)
LOCAL_MODULE := stlport_shared
LOCAL_SRC_FILES := stlport_shared.so
include $(PREBUILT_SHARED_LIBRARY)
答案 2 :(得分:0)
我不得不在我的java文件中添加一行来加载它:
System.loadLibrary("stlport_shared");
System.loadLibrary("my_lib");
答案 3 :(得分:0)
正如Nishant所说,你需要使用:
APP_STL := stlport_shared
APP_MODULES := stlport_shared mymodule ...
APP_STL
确保使用STLport,而APP_MODULES
可确保在需要时复制它。
这是一个stlport_shared
未根据需要复制的错误。请参阅Android问题21180:APP_STL := stlport_shared doesn't install libstlport_shared.so into libs directory。它应该在NDK R7b中修复。