Android 版 Qt Quick - Qt 6.9 和 6.10

作者:Qt Group中国 | Mar 2, 2026 3:33:03 AM

最近注意到我们尚未发布 Qt Quick for Android 更新。Qt 6.11 即将发布,让我们先简单了解一下 Qt 6.9 和 Qt 6.10 带来了哪些新功能。6.10 版的新特性可以从 "Qt Quick for Android 6.10 新特性 "章节查看,而 6.9 版的新特性则可以从" Qt Quick for Android 6.9 新特性 "章节查看。但下面这些古怪的术语究竟是什么意思呢?

部分数据变更

在 Android 服务中嵌入多个 QML 视图

多参数信号

javadoc 中的公共 Java API

这些术语都是什么呢?您能用它们做什么?

我们从"javadoc 中的公共 Java API"开始。这意味着所有 Qt Quick for Android 的 Java API(QtQuickViewQtQuickViewContentQtAbstractItemModelQtAbstractListModelQtModelIndexQtQmlStatusChangeListener)都以 Javadoc 风格而非QDoc 风格记录,就像 Qt APIs 和 Qt 6.8 中使用的 QtQuickViewAPI 一样!在此之前,它们只有类引用,如QtAbstractItemModel符合行业标准,让熟悉Java的开发者能够使用他们习惯的文档形式。

多参数信号允许 QML 根对象同时发出带有多个参数的信号, 从而简化了通信过程。例如,现在可以通过单个信号发送四个轮胎压力更新,而无需分别发送四个独立信号。新的信号系统设计支持最大 1MB 的数据传输。

 

开发人员现在可以 在单个  Android Activity (上下文)中嵌入多个 QML 视图。这样就能实现更复杂的布局。例如 当原生屏幕的不同区域需要由独立的 QML 组件驱动时,此特性就能排上用场 。

如何处理部分数据变更? QtAbstractItemModel 中新增的 API 方法 setData dataChanged并配合 onDataChanged让在应用程序内部实现局部数据更新成为可能。 以往更新模型通常需要删除并重新添加条目,这就迫使用户界面销毁并重建对象,造成很大的性能损失。借助这些新 API,您可以直接从界面编辑模型,并通知系统哪些数据已发生变更!

 

所有这一切都 Android 开发人员可以更轻松地将 3D 等高性能图形功能添加到已有的全新的 Java 或 Kotlin 应用程序中。无需重写整个应用程序,就可以嵌入 Qt 内容,同时保持以原生框架为核心的项目结构Qt Quick 3D 可助您创建炫酷的 3D 内容,并在单一场景中无缝融合 2D(Android)和 3D(Qt)元素。与传统的跨平台 Qt 应用程序不同,这种方法允许 Android 开发者使用 Java 或 Kotlin 创建和控制在 Android Studio  中创建和控制主要应用内容  同时仅在特定部分(如 3D 视图)使用QML即可

最酷的是,您可以使用 Squish 测试混合 2D(Android)和 3D (Qt)用户界面的 Android 应用程序!我们 Qt 研发团队也是这么做的。如果您想了解更多,请查看这篇文章:使用 Squish 测试 Qt Quick for Android 应用

如果您希望亲自体验,可以从 Qt Academy 的《在 Android 应用程序中嵌入 Qt Quick 3D 内容》课程开始。