Articles of qt

Qt Haptic对android的反馈

我试图让我的设备隆隆声,但我的运气很少。 我的环境是HTC Sensation Android 2.3.3 API 10.使用Necessitas Qt Creater作为我的IDE。 什么都不做: QFeedbackHapticsEffect::playThemeEffect( QFeedbackHapticsEffect::ThemeBasic ); 崩溃了我的申请: QFeedbackHapticsEffect rumble; rumble.setAttackIntensity(0.0); rumble.setAttackTime(250); rumble.setIntensity(1.0); rumble.setDuration(100); rumble.setFadeTime(250); rumble.setFadeIntensity(0.0); rumble.start(); rumble.stop(); 我已经使用以下内容指定了我的.pro文件 CONFIG += mobility MOBILITY += feedback 我正在使用包含所需标头的QTM_USE_NAMESPACE。 编辑: 我已设置以下权限: android.permission.INTERNET android.permission.WRITE_EXTERNAL_STORAGE android.permission.VIBRATE 但是我仍然收到分段错误。

QML WebView相机权限

我正在开发具有video聊天function的移动应用。 我为webrtcfind了一个不错的javascript库,它似乎在QWebView加载得很好,但我需要授予它访问摄像头和麦克风的权限,我无法弄清楚如何做到这一点。 可能吗? QWebEngineView有一个方便的信号和插槽,但它不支持移动。 清单权限不起作用,如此处所述。 相应的Qt bug: 无法通过QML WebView访问摄像头和麦克风 有任何想法吗?

Qt on android,减少二进制大小

我使用Qt在Android上构建应用程序,Qt Quick主要是它非常好,但我的主要问题是启动大小约为27 MB,这对于初始大小来说是巨大的..有没有办法减小这个大小?

为什么单线程模型用于将UI更新为主线程?

Qt医生说, 如上所述,每个程序在启动时都有一个线程。 该线程称为“主线程”(在Qt应用程序中也称为“GUI线程”)。 Qt GUI必须在此线程中运行。 Android文档说, 与活动和其他组件一样,服务在应用程序进程的主线程中运行 和iOS, 强烈建议不要从后台线程(例如计时器,通信等)更新UI控件等。 这可能是崩溃的原因,有时很难识别。 而是使用这些来强制在UI线程(始终是“主”线程)上执行代码。 为什么他们使用单线程模型来更新UI?

如何使用QAndroidJniObject在Qt C ++中使用本机android webview

我想在我的qml应用程序中使用Android WebView。 提供的默认WebView对象使用本机呈现,但缺少多个function(例如,拦截网络请求并阻止它们的能力)。 我知道Qt允许您使用QAndroidJniObject调用本机Java API。 是否可以使用它来创建本机Android WebView周围的Qt包装器? 如果是,我该如何实现?

Qt5 QGeoPositionInfoSource :: createDefaultSource()在Android 5.0上崩溃

我正在为Android开发一个Qt5应用程序(使用CMake!),目前我正在尝试使用Qt的QGeoPositionInfoSource读取位置数据。 到目前为止,我的所有应用程序都做得很好,但是当我跑步时 auto source = QGeoPositionInfoSource::createDefaultSource(this); 应用程序立即崩溃, logcat给了我: I/__log_qt( 422): (II) dpw_qt5: F/libc ( 422): Fatal signal 11 (SIGSEGV), code 1, fault addr 0x0 in tid 797 (QtThread) I/DEBUG ( 333): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** I/DEBUG ( 333): Build fingerprint: ‘samsung/trltexx/trlte:5.0.1/LRX22C/N910FXXU1BOE3:user/release-keys’ I/DEBUG ( […]

:在Qt for Android中使用Java函数和第三方库

最近我用qt写了一个Android应用程序。 但是我有一个很大的问题,我可以使用/调用一些原生的Android APIS,比如调用特殊活动吗? 例如,在Android SDK中我调用java中的联系人: Intent intent = new Intent(Intent.ACTION_PICK,ContactsContract.Contacts.CONTENT_URI); startActivityForResult(intent,PICK_CONTACT); 是否有一些用于java android sdk API的c ++包装器库? 或者如果我需要一些特殊的组件(用java编写),我可以在我的qt android程序中使用它吗? 或者使用“纯qt”和“标准java”或“C ++ android NDK”的混合页面/活动制作程序? (我问这个问题,因为我有MOSYNC框架的经验,这是一个很好的,但你只限于它自己的库,你不能使用任何外部库或Android标准API,…) 提前致谢。 编辑:根据JNI的改进( http://qt-project.org/doc/qt-5/qtandroidextras-index.html ),我有一个问题:我可以使用’任何’android Java第三方库吗? qt项目? 当我在Java SDK项目中使用这些库时?

使用CMake为Android配置Qt5 5.7应用程序

我已经使用CMake和这个 CMake实用程序成功配置并构建了一些适用于Android的 Qt5应用程序。 一切正常,直到我从Qt5.6切换到Qt5.7 。 当我尝试配置时,我得到一个CMake错误,这对我没什么帮助: — Configuring done CMake Error in CMakeLists.txt: No known features for CXX compiler “GNU” version 4.9. — Generating done — Build files have been written to: /path/to/build-dir 我像这样运行CMake: ANDROID_SDK=/path/to/android-sdk-linux \ ANDROID_NDK=/path/to/android-ndk-r12 \ QT_ANDROID_ROOT=/path/to/Qt-5.7.0-android \ JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk \ ANT=/usr/bin/ant \ cmake /path/to/CMakeLists.txt \ -DCMAKE_PREFIX_PATH=$QT_ANDROID_ROOT \ -DCMAKE_TOOLCHAIN_FILE=/path/to/android.toolchain.cmake 我可以用最小的C ++程序重现这种行为: #include int main() […]

Qt Creator 3.3.0中的“Create AndroidManifest.xml”按钮在哪里?

在Projects-> Run-> Deploy中曾经有一个“Create AndroidManifest.xml”按钮: 但是现在从QtCreator 3.3.0到Qt 5.4.0,它无处可寻: 现在按钮消失了,如何指定AndroidManifest.xml?

在Android上Qt QML Camera to C ++ QImage

我有一个基于Qt5.4的程序和一些image processing。 我使用QCamera和我的videoSurface (派生自QAbstractVideoSurface )来获取VideoFrames。 它在Windows上运行良好。 但现在我需要我的应用程序的Android版本。 我发现QCamera无法在Android上运行。 但我看到QML Camera示例在Android上运行没有任何问题。 所以我决定用QML重写我的应用程序。 主要问题:我无法在C ++中访问QML Camera表面。 void myVideoOutput::setSource(QObject *source) { qDebug() << Q_FUNC_INFO <metaObject(); QStringList properties; for(int i = metaObject->propertyOffset(); i propertyCount(); ++i) properties <property(i).name()); qDebug() << properties; } ….. emit sourceChanged(); } 此代码提供对属性的访问。 但我无法以这种方式访问​​videoSurface(使用QCamera我可以这样做)。 我想知道QML Camera是如何工作的? 它是基于QCamera吗? 我在QDeclarativeCamera看到了QCamera *m_camera …… 所以我有两个问题: 是否可以在C ++中使用QML Camera进行后处理图像? 工作实例非常有价值。 你知道在Qt中从Android摄像头捕获video的其他方法吗?