如何将所需的库添加到 Android 应用程序的 pyqtdeploy 项目文件中?
How to add required libraries to a pyqtdeploy project file for an Android app?
我已经使用 PyQt5 和 pyqtdeploy 成功地将 QtWigets 应用程序部署到 Android。但是,当我想部署基于 QML 的应用程序时,应用程序崩溃了。
我发现以下 QML 片段缺少 Qt5QuickTemplates2.so 和 Qt5QuickControls2.so:
import Quick 2.0
import QuickControls 2.5
...
如何在项目文件中声明这些库?
Qt 部分没有可检查的条目。
只有 QtQuick 和 QtQml。
您可以尝试 deployqt 个应用程序。
备选方案:
- 只需将 所有 的 库和插件 复制到您的 应用程序路径
- 更改 Qt 文件夹的名称
- 执行应用程序
- 尝试删除所有库和插件(不是root用户)
- 系统会提示app使用的文件无法删除
干杯!
幸运的是我找到了解决办法。
在任何地方都没有记录,所以我只知道这个解决方法。
在 运行 androiddeployqt 之前,我必须将有效的 QML 文件复制到 build-directory androiddeployqt 可以找到该文件的地方。
查看 android-lib*.so-deployment-settings.json 文件中 build-directory 的密钥 "qml-root-path":
已经设置了 qml-root。在我的例子中是 build-android-32.
androiddeployqt 正在扫描此文件,并且可能还扫描相关的 qml 文件以获取导入语句。然后它知道要部署哪些额外的库。
我已经使用 PyQt5 和 pyqtdeploy 成功地将 QtWigets 应用程序部署到 Android。但是,当我想部署基于 QML 的应用程序时,应用程序崩溃了。 我发现以下 QML 片段缺少 Qt5QuickTemplates2.so 和 Qt5QuickControls2.so:
import Quick 2.0
import QuickControls 2.5
...
如何在项目文件中声明这些库?
Qt 部分没有可检查的条目。
只有 QtQuick 和 QtQml。
您可以尝试 deployqt 个应用程序。
备选方案:
- 只需将 所有 的 库和插件 复制到您的 应用程序路径
- 更改 Qt 文件夹的名称
- 执行应用程序
- 尝试删除所有库和插件(不是root用户)
- 系统会提示app使用的文件无法删除
干杯!
幸运的是我找到了解决办法。
在任何地方都没有记录,所以我只知道这个解决方法。
在 运行 androiddeployqt 之前,我必须将有效的 QML 文件复制到 build-directory androiddeployqt 可以找到该文件的地方。
查看 android-lib*.so-deployment-settings.json 文件中 build-directory 的密钥 "qml-root-path":
已经设置了 qml-root。在我的例子中是 build-android-32.
androiddeployqt 正在扫描此文件,并且可能还扫描相关的 qml 文件以获取导入语句。然后它知道要部署哪些额外的库。