通过 Qt Creator 5.8 ,并使用AVD_for_Nexus_4_by_Google API 22 armeabi
工具包,我在Creating the Project部分之后创建了一个名为App1
的应用。
然后创建一个AVD
,如下所示运行应用程序并选择 AVD>好的等待等待。
将不会显示任何虚拟设备以查看我的应用程序在那里工作并在"编译输出"中获得以下内容:
// ...(此处有许多行已成功建立)
建立成功的作用
总时间:5.413秒
Android软件包在14.136毫秒内成功构建
- 文件:C:/ Users / CS / Documents / Qt / App1 / build-App1- Android_for_armeabi_v7a_GCC_4_9_Qt_5_8_0-Debug / android- build // build / outputs / apk / android-build-debug.apk
警告:无法在任何导入路径中解析QML导入:QtQuick.Extras.Private.CppUtils
警告:无法在任何导入路径中解析QML导入:QtQuick.Extras.Private.CppUtils
12:26:30:进程" C:\ Qt \ Qt5.8.0 \ 5.8 \ android_armv7 \ bin \ androiddeployqt.exe"正常退出。
构建/部署项目App1时出错(工具包:Android for armeabi-v7a(GCC 4.9,Qt 5.8.0))
执行步骤"部署到Android设备"
12:28:35:经过的时间:02:20。
请问您对这个问题有什么看法?有什么办法可以解决吗?
答案 0 :(得分:1)
要了解此处发生的情况,您至少应该打开部署步骤的详细输出(构建设置 - > Qt创建者中的高级操作)。
我看到这种情况发生了一段时间,因为与android模拟器的连接太慢而无法及时完成部署,然后切换到使用效果更好的真实设备。在多次启动模拟器时,使用模拟器确实对我有用。使用x86版本的模拟器和Qt仅用于开发可能会使一切运行得更快更顺畅,因为仿真具有更好的性能。但是,在这种情况下,您不会看到代码中特定于ARM的问题,并且您必须确保您的代码独立于使用的处理器体系结构。
请注意,QTBUG-44697可能会让Google无法使用最新的Android模拟器。恢复引入的workaround使Qt可以与早期版本的模拟器一起使用,这使得模拟器至少可以使用Qt 5.6.2。然而,这需要从(修补的)源构建Qt。