android - 自定义 QML 模块部署到 Android : QML dependencies missing

标签 android qt deployment qml

我正在开发一个包含一些特殊类型的自定义 QML 模块(我们称之为 MyModule)。它被用作其他应用程序项目的预编译库(即源代码对它们不可用,它通过导入 MyModule 1.0 使用,设置必要的导入路径等)。该模块包含基于 C++ 的 QML 类型以及本身导入 QtQuick 模块(如 QtQuick.Controls 和 QtQuick.Window)的 QML 文件。

当我尝试将使用 MyModule 开发的应用程序部署和执行到 Android 时,MyModule 的依赖项未被 androiddeployqt/qmlimportscanner 拾取并包含在 APK 中,这导致消息如下:module "QtQuick.Controls "未安装

有没有一种方法可以将这些 QML 依赖项包含在 APK 中,而不必在应用程序源目录中创建一个包含所有导入的虚拟 qml 文件,这样它们就可以被 qmlimportscanner 获取?

最佳答案

您可以尝试添加 depends qmldir 文件的关键字:

Declares that this module depends on another.

Example:

depends MyOtherModule 1.0

This declaration is necessary only in cases when the dependency is hidden: for example, when the C++ code for one module is used to load QML (perhaps conditionally) which then depends on other modules. In such cases, the depends declaration is necessary to include the other modules in application packages.

要获得一些灵感,请查看这个:

http://code.qt.io/cgit/qt/qtquickcontrols2.git/tree/src/imports/controls/qmldir

关于android - 自定义 QML 模块部署到 Android : QML dependencies missing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35342222/

相关文章:

android - Jetpack Compose BottomNavBar 吗?如何使用 bottomNavbar 任何示例?

android - 如何在 Android Usb 主机中获取主机发送命令后 USB 设备响应的内容?

JavaFX 部署 - 图像丢失

maven - [错误]无法执行目标org.apache.maven.plugins :maven-deploy-plugin:2. 7:部署

django - Nginx为Django应用提供静态文件

android 应用程序 socket.io 未连接到 node.js 服务器,但 android 浏览器建立连接

android - 写入文件到 SD_Card

python - 如何找到用循环创建的QButton?

python - 如何使用 KFileDialog 选择多个目录?

database - 与 QTableView 内的数据交互的最佳方式