【问题标题】:How can I connect from Android to PC via USB?如何通过 USB 从 Android 连接到 PC?
【发布时间】:2013-07-11 20:17:18
【问题描述】:

我的最终目标是让我的 Android 平板电脑上的应用通过 USB 连接到我桌面上的应用。我不想要求我的用户启用 USB 调试 - 我已经看到了几个使用 adb 来处理数据传输的实现(123...),但这对于我的用例。

我关注了USB Accessory guide,并尝试列出以下设备:

public void onResume() {
    super.onResume();
    UsbManager manager = (UsbManager) getSystemService(Context.USB_SERVICE);
    log( "Devices:" + manager.getDeviceList().toString() );
    ...

但设备列表始终为空。 manager.getAccessoryList() 返回了null

AndroidManifest.xml:

<?xml version="1.0" encoding="utf-8"?>
<manifest
  xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.example.usb" android:versionCode="1" android:versionName="1.0">
 <uses-sdk
   android:minSdkVersion="12" android:targetSdkVersion="17" />
 <uses-feature
   android:name="android.hardware.usb.accessory" android:required="true" />
 ...

后来我在设备上、终端模拟器和cron'd 脚本中尝试了lsusb。它显示没有连接设备。 (我尝试禁用 USB 调试以防万一 - 仍然没有。)

我是否缺少一些列出 USB 设备的权限,或者我需要配置我的桌面以允许 UsbAccessory 连接还是什么?如果是这样,那为什么会阻止lsusb 显示它所连接的计算机?

【问题讨论】:

    标签: android usb


    【解决方案1】:

    最简单的方法是在平板电脑上启用USB tethering,然后使用 TCP 连接您的客户端和服务器。 见https://support.google.com/android/answer/182134?hl=en

    【讨论】:

    • 该选项未出现在我的设置菜单中。 (我没有平板电脑的数据计划,这有关系吗?)我可以使用 API 来启动应用程序的网络共享吗?
    • Re:revision 是的,这指示您转到Settings &gt; Wireless &amp; networks &gt; Tethering &amp; portable hotspot,我的平板电脑上不存在。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-26
    • 2020-08-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多