java libQt5AndroidExtras。所以没找到
我正在用Qt编写一个移动应用程序,需要进行一些特定于平台的呼叫,比如请求电池电量。因此,从Qt级别,我试图调用Android SDK级别。根据我在互联网上收集的信息,我应该做以下几点
我用要调用的代码创建了一个小Java类:
// AndroidService.java
package path.to.java;
public class AndroidService {
public static int doSomething() {
System.out.println("Android says hi");
return 1;
}
}
接下来,在我的Cpp代码中,我使用Qt的Android JNI库对此进行了调用:
// 安卓service.cpp
#include <QtAndroidExtras>
void doSomething() {
QAndroidJniObject::callStaticMethod<int>("path.to.java.AndroidService", "doSomething");
}
我在我的主要函数中称之为
最后,我在我的报告中添加了以下内容。专业文件:
// project.pro
安卓 {
QT += 安卓extras
SOURCES += mobileservice/安卓service.cpp
OTHER_FILES += mobileservice/安卓/src/path/to/java/AndroidService.java
ANDROID_PACKAGE_SOURCE_DIR=$$_PRO_FILE_PWD_/mobileservice/安卓
}
编译后,这将生成无错误的代码。但是,在运行应用程序时,我遇到以下堆栈跟踪崩溃:
E/AndroidRuntime( 7184): java.lang.UnsatisfiedLinkError: dlopen failed: library "libQt5AndroidExtras.so" not found
E/AndroidRuntime( 7184): at java.lang.Runtime.loadLibrary(Runtime.java:371)
E/AndroidRuntime( 7184): at java.lang.System.loadLibrary(System.java:988)
E/AndroidRuntime( 7184): at org.qtproject.qt5.安卓.bindings.QtActivity.loadApplication(QtActivity.java:252)
E/AndroidRuntime( 7184): at org.qtproject.qt5.安卓.bindings.QtActivity.startApp(QtActivity.java:655)
E/AndroidRuntime( 7184): at org.qtproject.qt5.安卓.bindings.QtActivity.onCreate(QtActivity.java:895)
E/AndroidRuntime( 7184): at 安卓.app.Activity.performCreate(Activity.java:6500)
E/AndroidRuntime( 7184): at 安卓.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1120)
E/AndroidRuntime( 7184): at 安卓.app.ActivityThread.performLaunchActivity(ActivityThread.java:3072)
E/AndroidRuntime( 7184): at 安卓.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3218)
E/AndroidRuntime( 7184): at 安卓.app.ActivityThread.access$1000(ActivityThread.java:198)
E/AndroidRuntime( 7184): at 安卓.app.ActivityThread$H.handleMessage(ActivityThread.java:1676)
E/AndroidRuntime( 7184): at 安卓.os.Handler.dispatchMessage(Handler.java:102)
E/AndroidRuntime( 7184): at 安卓.os.Looper.loop(Looper.java:145)
E/AndroidRuntime( 7184): at 安卓.app.ActivityThread.main(ActivityThread.java:6837)
E/AndroidRuntime( 7184): at java.lang.reflect.Method.invoke(Native Method)
E/AndroidRuntime( 7184): at java.lang.reflect.Method.invoke(Method.java:372)
E/AndroidRuntime( 7184): at com.安卓.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404)
E/AndroidRuntime( 7184): at com.安卓.internal.os.ZygoteInit.main(ZygoteInit.java:1199)
尽管将安卓extras库添加到我的。pro文件,应用程序似乎无法找到它。我错过什么了吗
共 (0) 个答案