android - 确定使用了哪个 USB 端口

标签 android usb

问题是:插入 USB 闪存驱动器时,如何(以编程方式)确定使用了哪个 USB 端口?
上下文:
我正在为 Android TV Box 开发一个应用程序,可让您查看 Pendrive 中的文件。我的设备有 3 个 USB 端口。我想知道使用了哪个端口(某种 ID、端口名称,任何可以帮助我在代码中识别它的东西)。
我做了什么:

  • 我阅读了有关 USB as a host 的 android 文档.没有一个类包含此类信息。 API 仅列出插入的设备,但没有关于 USB socket 的信息。 deviceName是一个字符串,其中包含在 android 系统中创建的设备文件的路径,但每次我插入 USB 闪存驱动器时它都会发生变化(看起来像 /dev/bus/usb/007/008 这些数字最终每次都不同)。
  • 通过 adb shell 查看了 android sys 文件命令,但找不到任何描述 USB 端口并说明当前正在使用的端口的内容。

  • 也许有人遇到过类似的问题?我真的很感激任何帮助。提前致谢!

    最佳答案

    Android 操作系统不会公开您要查找的信息。
    只有对下面的底层 Linux 系统具有 root 访问权限,才能获得该信息。
    使用lsusb枚举 USB 设备和 dmesgmount关联驱动器的安装点。

    关于android - 确定使用了哪个 USB 端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71083571/

    相关文章:

    android - 如何将位图中的NV21图像格式转换?

    android - ndk-build 不断重建所有源

    用于向连接到 USB 总线的设备发送 SET_CONFIGURATION 消息的 Linux 工具

    linux - 通过串行端口发送一些无符号整数时出错(teensy -> raspi)

    android - BroadcastReceiver 异步 onReceive

    mysql - Arduino + MySql + MySqlIO 编译时出错

    android - 在 Android Dialog 中,如何为 startActivityForResult 设置 onActivityResult?

    android - 为什么 v4 fragment 没有 startActivity(Intent, Bundle)?

    android - 如何在手机休眠时防止 Wifi 断开连接?

    android - 启动手机后 Android 上的 USB 调试问题 : "CreateJavaVM failed: dvmGcStartup failed"