问题标签 [qtandroidextras]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4570 浏览

android - 将 jstring 转换为 QString

我正在调用一个返回字符串的 Java 函数:

它返回 a jstring,这对我来说不是很有用。如何将其转换为 a QString,以便在我的代码中使用它?

0 投票
1 回答
1141 浏览

android - 在启动时启动 Qt 应用程序 - Android

我知道如何在设备的 BOOT 上启动一个 android 应用程序。我已经在 J​​ava 中使用 BroadcastReceiver 做到了这一点。但是,我的问题是另外一回事。我有点卡在这个问题上:

问题:我正在使用 Qt for Android。我有一个用于侦听 TCP/IP 连接的 Qt 文件。与客户端建立连接后,我开始显示图像和声音。但是,我希望这个监听是在设备启动时启动的后台服务。并且只有在建立连接后,才能开始显示图像和声音的活动。关于如何开始/实施的任何想法?我必须使用 JNI 吗?

0 投票
3 回答
3802 浏览

java - 如何在 Qt for android 中保持屏幕开启?

我找到了几个如何在 Java 中做到这一点的解决方案,但没有找到如何在 QML 或 Qt 中做到这一点。我知道首先我应该WAKE_LOCKAndroidManifest.xml. 我应该怎么做才能在运行时从 Qt 打开和关闭屏幕锁定?

0 投票
1 回答
834 浏览

java - 如何在 Qt for android 上获取应用程序参数

我有一个 Qt 应用程序,它在 AndroidManifest.xml 中定义了文件关联,所以当我在浏览器中选择一个文件时,我会得到一个关联应用程序的列表。我的应用程序在列表中,但是当我选择它时,文件路径未argv在我的main()方法的列表中传递。路径是如何传递给应用程序的,如何在 Qt/C++ 中使用它?

0 投票
2 回答
906 浏览

java - 在android中更改特定页面的方向

我正在使用 Qt 和 c++ 开发一个 android 应用程序。我的整个应用程序都是纵向的。但是当我播放视频时,我想将方向更改为横向,并且在视频结束后它应该再次更改为纵向。

所以问题是如何在 Android 的 Qt/C++ 应用程序中将屏幕设置为横向或纵向模式。

0 投票
1 回答
1246 浏览

android - 通过 JNI 调用简单的 java 静态方法不起作用,尽管 c++ 编译并运行它

考虑这个带有静态方法的 Java 类:

我在 c++ 文件中编写了这些代码行:

似乎一切正常,但我不知道如何使用该str对象。我尝试QString使用方法将其转换为对象,str.tostring()但它总是返回一个空字符串。为什么它不能按预期工作?我还测试()Ljava/lang/String;了方法签名,但没有成功!
提前致谢。

0 投票
1 回答
1569 浏览

c++ - Qt 不编译 callStaticObjectMethod()

我从这个问题中编写了以下代码,它被编译并完美运行:

现在我更改了 java 方法,它需要一个字符串类型的输入参数。

Java代码

但是添加方法签名和输入参数对我不起作用。我编写了这段代码来使用 JNI 在提到的 java 类中调用静态方法:

但是 Qt creator 没有构建它,打印了这个错误:

谢谢你的帮助。

我也试过 callStaticMethod

为了这:

我收到以下错误:

...\testclass.cpp:21: 错误:未定义引用 '_jstring* QAndroidJniObject::callStaticMethod<_jstring*>(char const*, char const*, char const*, ...)'

## 我也试过没有模板参数的 callStaticObjectMethod ##

QAndroidJniObject str = QAndroidJniObject::callStaticObjectMethod("org/...TextClass" ,"staticMethod" ,"(Ljava/lang/String;)Ljava/lang/String;",val.object());

它总是返回一个空字符串。我不确定它是否真的是空的。我qCritical() << str.toString();用来打印字符串,但随后打印了一个空的 qout!

0 投票
1 回答
1086 浏览

qt - callStaticObjectMethod 的用途是什么?

qt 文档在 QAndroidJniObject 对象中很差。callStaticObjectMethod你能告诉我和之间有什么区别,callStaticMethod我应该什么时候使用它们?如果您有任何工作示例,如果在您的答案中解决它们,将不胜感激。(如 Q 通知器)谢谢

0 投票
1 回答
1500 浏览

c++ - 使用 JNI 将 jbyte 数组发送到 Java 方法失败

考虑这个java方法:

我尝试使用 Qandroid JNI 从 c++ 中使用此方法。这是我用 C++ 编写的代码:

根据Java代码的签名。我是否正确使用了 callMethod?为什么它根本不运行?它在控制台中不打印任何内容!没有例外没有错误!


供您参考,我正在尝试使用 JNI 打开 USB 串行设备。我成功打开了设备,得到了 UsbDeviceConnection 对象。串行端口已成功打开,一切正常。但是这里写功能不起作用。似乎它根本没有进入该功能。我没有收到错误。我认为问题是我为该方法提供的签名字符串或缓冲区对象?你对此有何看法? 谢谢你的帮助。

0 投票
1 回答
986 浏览

android - QAndroidJniObject::callMethod() 和 QAndroidJniObject::callObjectMethod() 有什么区别?

我注意到 Qt 文档提供了两种调用 android 本机方法的方法,但我不知道何时使用QAndroidJniObject::callMethod以及何时使用QAndroidJniObject::callObjectMethod. 规则是什么?