安卓主机模式USB调试

8

我正在开发一个应用程序,其中我的安卓手机连接到一个USB附件。然而,当附件连接时有没有一种简单的方法来调试应用程序?

我们能否使用微型USB集线器或类似设备?

3个回答

14

在调试使用USB附件或主机功能的应用程序时,您很可能会将USB硬件连接到Android设备上。这将防止您通过USB与Android设备建立adb连接。您仍然可以通过网络连接访问adb。要启用通过网络连接的adb:

  1. 通过USB将Android设备连接到计算机。
  2. 从SDK platform-tools/目录,在命令提示符下输入adb tcpip 5555。
  3. 输入adb connect <device-ip-address>:5555,现在您应该已经连接到Android设备并可以发出像adb logcat这样的常规adb命令了。
  4. 要设置设备以侦听USB,请输入adb usb。

来源:Android开发者网站


非常感谢您的回答,我之前并没有意识到您可以这样做。然而,不幸的是,由于我工作的地方有限制,我无法使用WIFI,是否有其他替代方案? - user1145533
我不知道...也许这个主题可以帮助你:http://www.basic4ppc.com/forum/basic4android-getting-started-tutorials/11289-android-usb-host-tutorial-adbtest.html - Mariusz Chw

1

您可以编写一个应用程序,读取手机上的logcat输出并在屏幕上显示它和/或将其保存到文件中,之后您可以使用adb拉取该文件。

该应用程序必须被授予READ_LOGS权限,您可以使用adb shell pm grant com.package.appname android.permission.READ_LOGS(至少在已root的手机上)来实现。

另一种选择可能是通过WiFi记录日志。adb有一个选项可以通过TCP/IP连接,但这不是我尝试过的,所以我不知道设置起来有多困难或者它的工作效果如何。

除非您的日志非常冗长,否则有时候只需要运行USB附件用例,然后拔下附件并将手机连接到计算机以捕获logcat输出即可。日志会缓存一定量,因此您可以使用此方法获取合理数量的日志。


0
您可以在Virtualbox中运行一个Android映像。这将允许您将USB设备连接到虚拟设备,并通过桥接网络连接进行调试。
我还没有找出如何将SDK .img操作系统映像转换为用于Virtualbox的VDIs,但有很多预制的VDIs可供使用。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接