【问题标题】:qt for android doesn't find my physical deviceqt for android 找不到我的物理设备
【发布时间】:2013-07-30 18:55:47
【问题描述】:

我正在尝试使用 Qt5.1 编写 android 应用程序。我根据these instructions 安装了所有东西,并编写了我的应用程序并成功构建了它。我的问题是,当我在 android 版本上单击运行时,而不是在我连接的设备上运行应用程序,甚至询问我是要使用虚拟设备还是物理设备(就像 eclipse 一样),它只会打开 ADV。

我知道我已经正确连接了我的设备,因为我可以在我的设备上运行我用 eclipse 编写的应用程序。但不是 Qt。

谁能帮帮我?

以防万一您需要知道我使用的是最新版本的 ndk,而对于 sdk,我使用的是 adt 的最新版本。如果我应该提供任何其他信息,请告诉我。

谢谢

【问题讨论】:

  • 在使用android sdk/eclipse时是否有效?
  • 只有当我使用eclipse ide而不是qt时才可以

标签: android qt qt5


【解决方案1】:

我也遇到过这个问题,你的设备与 QT 运行设置不对应。当您按下运行(可能在 QT Creator 中?)时,它将搜索允许应用程序运行的设备。

这有几种可能:

  • 您的设备设置不正确:
    • 在命令提示符下运行“adb start-server”,然后运行“adb devices”。它是否说它找到了 1 个状态为“设备”的设备?如果不是,您的设备可能没有启用 USB 调试(您可以在设备的开发设置中启用此功能)。
  • 您在错误的模式下构建:
    • 确保您正在为 ARM 创建程序(例如 ARM GCC 4.7 QT 5.1)。
  • 为错误的 API 级别部署:
    • 您是否在支持 API 级别 17 的设备上运行程序?如果没有,您可以在 QT 项目设置中更改这些设置(API 级别)。
  • 您没有安装最新的 API 级别:
    • 启动 android sdk 管理器并下载并安装新的 API。

执行这些步骤后它对我有用,如果您有任何其他困难,请随时询问!

编辑 如果这些步骤不起作用,请检查您的 android sdk 是否位于具有写入权限的位置。

【讨论】:

  • 所以我按照你说的做了,还是不行。 adb 找到我的设备。我改为ARM编译器。而且我不知道我的设备是否支持 API 17,但我已经用 eclipse 完成了这个并且它有效,所以我假设我的 sdk 和设备是兼容的。我还更改了sdk位置的权限。如果您对我有任何其他提示,我真的很高兴
  • 你用的是什么设备?
  • 确保已更新并配置 QT 以创建适用于较低版本 API 级别的 Android 程序。
  • @soroosh.strife 作为解决方法,您可以使用较新的设备(在我的情况下为 galaxy s4)并在此时部署它,因为 api 级别。此时它将生成 .APK,您可以将其复制并放在较低级别的 api 设备上(这在大多数情况下仍然有效)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-01-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-10-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多