我已经使用pyqt5和pyqtdeploy成功地将QTwigets应用程序部署到Android。但是,当我想部署基于QML的应用程序时,应用程序崩溃了。我发现的是qt5quicktemplates2.so和qt5quickcontrols2.SO缺少以下QML片段:
import Quick 2.0
import QuickControls 2.5
...
如何在项目文件中声明这些库?
QT部分没有可划分的条目。
只有qtquick和qtqml。
幸运的是我找到了一个解决方案。
它没有在任何地方记录在任何地方,所以我只知道这个解决方法。
在运行AndroidDeployQT之前查看android-lib*.so-deployment-settings.json文件中的构建目录中的" qml-root-path":
已经设置了一个QML根。就我而言,它是构建Android-32。
AndroidDeployQT正在扫描此文件,也许还取决于QML文件以进行导入语句。然后知道要部署哪些其他库。
您可以尝试 deployqt applications。
- 如果您使用的是 Linux ,请尝试 linuxDeployqt 从这里
- 如果您使用的是 Windows ,请尝试 Windeployqt 从此处
替代解决方案:
- 只需复制 libraries and插件的所有在您的应用程序>应用程序路径
- 更改 QT文件夹的名称
- 执行应用程序
- 尝试删除所有库和插件(不是root(
- 系统会告诉您,使用App 的文件无法删除。
欢呼!