JNI_OnLoad返回错误版本(-1)



我试图在我的Android应用程序中加载Qt5Core库,我得到这个:

JNI_OnLoad returned bad version (-1) in /data/data/com.xxx.yyy/lib/libQt5Core.so 0x41a8f3c0
Failed to load library : Qt5Core due to link error unknown failure
java.lang.UnsatisfiedLinkError: unknown failure
at java.lang.Runtime.loadLibrary(Runtime.java:370)

我是这样加载的:

System.loadLibrary(年代);

,其中"s"是包含多个库名的数组。其他库被正确加载…

欢迎任何想法!


编辑

所以我先得到这个:

D/dalvikvm(11445): Trying to load lib/数据/app-lib/com.xxx.yyy/libQt5Core。0 x42666fd8
D/dalvikvm(11445):增加共享库/数据/app-lib/com.xxx.yyy/libQt5Core。所以0x42666fd8

E/LibrariesLoader(11445): Failed to load library: Qt5Core due to link从JNI_OnLoad返回JNI_ERR错误"/数据/app-lib/com.xxx.yyy/libQt5Core。所以"

E/LibrariesLoader(11445): java.lang.UnsatisfiedLinkError: JNI_ERR . error从JNI_OnLoad返回"/data/app-lib/com.xxx.yyy/libQt5Core.so"

…然后还有另一个库被加载,没有任何错误/警告。这个库有Qt5Core。

我已经调查过了,我得到了这个JNI_ERR,因为下面的代码:

如果(vm -> GetEnv(及uenv。venv, JNI_VERSION_1_6) != JNI_OK)
返回JNI_ERR;

我使用的JNI版本是1.6!!!!

QtCore的JNI_OnLoad在启动时加载一个名为"QtNative"的活动,如果没有找到则返回JNI_ERR。

QtNative在" qtandroid -bundle .jar"中定义。你可以在QT 5.3 SDK文件夹中找到它: Qt5/5.3/android_armv7/jar/QtAndroid-bundled.jar

把它添加到项目的"libs"文件夹

相关内容

  • 没有找到相关文章

最新更新