在 qt 中执行 java 文件
Executing java file in qt
我正在尝试在qt中执行一个java文件,这是我的java文件代码:
import android.appwidget.AppWidgetManager;
import android.appwidget.AppWidgetProvider;
import android.content.Context;
public class Main extends AppWidgetProvider {
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
int[] appWidgetIds) {
// TODO Auto-generated method stub
super.onUpdate(context, appWidgetManager, appWidgetIds);
}
}
问题是如何调用这个java文件,我很困惑,不知道如何在更新上调用函数,有什么想法吗?
要在Qt Android应用程序中运行Java代码,您应该使用Qt Android Extras模块,该模块包含用于在Android上进行开发的附加功能。
您可以使用 JNI 从 C/C++ 调用 Java 函数,或者从 Java 回调 C/C++ 函数。
让我们假设你有一个静态的Java方法,如下所示:
package com.MyApp;
public class JavaClass
{
public static int SomeMethod(int n)
{
...
}
}
首先,您需要将其添加到您的 .pro 文件中:
QT += androidextras
并包括相关的头文件:
#include <QAndroidJniObject>
然后,您可以从C++代码中调用静态 java 函数,如下所示:
bool retVal = QAndroidJniObject::callStaticMethod<jint>
("com/MyApp/JavaClass" // class name
, "SomeMethod" // method name
, "(I)I" // signature
, val);
有关更详细的说明,您可以看到这一点。
相关文章:
- 下面的C++代码将如何作为java类文件(名为Monstor)编写
- Java System.loadLibrary 不会在 /usr/lib/x86_64-linux-gnu/ 文件夹中查
- 在为 Java 编译动态链接文件时,我应该选择哪些 g++ 参数
- 如何在Java中调用C 对象文件中的函数
- TCP-Server以数据包结构(非Java客户端)发送文件
- 如何从 JAVA 程序中访问文件中定义的类.DLL方法
- 在Java项目中使用CPP和OpenCV项目的.so文件
- 使用 C++ 编译和运行 java 文件时无法装入主类
- 将 JNI -> jobject(基本上是 java 文件中的映射和/或映射的映射)转换为 std::map(c++)
- 为什么Java可以有很多Main,你可以决定要运行哪个Java文件,但对于C++来说,你只是一个Main文件
- 在技术上是否可以创建 Java 虚拟机的映像文件并使用它来更快地启动 Java 应用程序
- 如何在C ++文件中使用".class"或".jar" Java文件(无需转换)?
- 在 qt 中执行 java 文件
- 安卓 :如何在.java文件和GSOAP之间接口
- 如何衡量C++或 Java 文件的复杂性
- 如何使用C++编译.java文件
- 有没有办法以有限的权限运行C++和 Java 文件
- 如何制作一个makefile来同时编译C、c++和Java文件
- 从Java文件调用c++文件中的c++方法时出现UnsatisfiedLinkError
- 将数据从Java文件传递到cpp