【问题标题】:libusb for Android using open2(, int fd)libusb for Android 使用 open2(, int fd)
【发布时间】:2014-06-09 00:42:01
【问题描述】:

我从

编译了 libusb 的修改版本以用于 Android 设备

https://github.com/martinmarinov/rtl_tcp_andro-/blob/master/jni/libusb-andro/README

有没有关于如何在 C 程序中使用这个特定函数的示例?

  1. 需要包含哪些标头才能使该库正常工作。
  2. 关于如何在 C 程序中使用 open2(, int fd) 的任何示例

【问题讨论】:

    标签: android c libusb


    【解决方案1】:

    这不是新图书馆。只有 libusb 的修改版本。因此,所有 libusb 命令都适用于此。唯一的区别是您必须使用 libusb_open2 来代替 libusb_open。从 libusb/libusb.h 文件中可以看到 libusb_open2 的原型。

    int LIBUSB_CALL libusb_open2(libusb_device *dev, libusb_device_handle **handle, int fd);
    

    现在,对于在 android 上使用 libusb,步骤如下。

    1. 首先获取您感兴趣的USB设备的权限。详细信息在这里:http://developer.android.com/guide/topics/connectivity/usb/host.html

    2. 然后使用getFileDescriptor()的方法提取USB设备的文件描述符

    3. 使用此文件描述符打开与 USB 设备的连接。那就是制作一个 libusb_device。

    现在您可以使用这个 libusb_device 来完成所有可以在计算机上使用 libusb 完成的事情。 libusb website上给出了很多例子。

    对于其他查询,您可以在 freenode 上的 #libusb 上进行视频群聊。 有关具体示例,请查看文档。自己试试。如果卡在某个地方,请在这里询问。不要指望用勺子喂食。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-19
      • 1970-01-01
      • 2013-04-24
      • 2017-04-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多