qq_36575459 2022-02-13 15:50 采纳率: 0%
浏览 22

ArrayIndexOutOfBoundsException: at android.hardware.usb.UsbInterface.getEndpoint

img

代码如下:


public int SignatureWithExPinpad() {
        String ACTION_USB_PERMISSION = "cn.wch.wchusbdriver.USB_PERMISSION";
        // Find all available drivers from attached devices.
        UsbManager manager = (UsbManager) getSystemService(Context.USB_SERVICE);
        List<UsbSerialDriver> availableDrivers = UsbSerialProber.getDefaultProber().findAllDrivers(manager);
        if (availableDrivers.isEmpty()) {
            return -1;
        }
        // Open a connection to the right available driver.
        int i;
        UsbSerialDriver driver = availableDrivers.get(0);
        for (i = 0; i < availableDrivers.size(); i++) {
            driver = availableDrivers.get(i);
            UsbDevice udevice = driver.getDevice();
            if ((udevice.getVendorId() == UsbId.VID) && (udevice.getProductId() == UsbId.PID)) {
                PendingIntent mPermissionIntent = PendingIntent.getBroadcast(this, 0, new Intent(ACTION_USB_PERMISSION), 0);//PendingIntent.FLAG_UPDATE_CURRENT
                manager.requestPermission(driver.getDevice(), mPermissionIntent);
                SystemApi.Delay_Api(5000);
                break;
            }
        }
        final UsbDeviceConnection connection = manager.openDevice(driver.getDevice());
        if (connection == null) {
            return -1;
        }
        // Read some data! Most have just one port (port 0).
        port = driver.getPorts().get(0);
        try {
            port.open(connection);
            port.setParameters(38400, 8, UsbSerialPort.STOPBITS_1, UsbSerialPort.PARITY_NONE);
        } catch (IOException e) {
            Log.d("aabb", "get port");
            connection.close();
            e.printStackTrace();
            return -1;
        }
        return 0;
    }

CdcAcmSerialDriver 用的官方的源码,其内的mControlInterface.getEndpoint(0) 调用看起来也没有错,android.hardware.usb.UsbInterface.getEndpoint 是android sdk内的 看不到源码了,请指教。

img

  • 写回答

3条回答 默认 最新

  • 猫猫爱吃鱼 2022-02-14 10:40
    关注

    错误信息已经指明了嘛,endpoint的个数为0

    评论

报告相同问题?

问题事件

  • 创建了问题 2月13日

悬赏问题

  • ¥15 数据库原理及应用上机练习题
  • ¥15 征集Python提取PDF文字属性的代码
  • ¥15 如何联系真正的开发者而非公司
  • ¥15 有偿求苍穹外卖环境配置
  • ¥15 代码在keil5里变成了这样怎么办啊,文件图像也变了,
  • ¥20 Ue4.26打包win64bit报错,如何解决?(语言-c++)
  • ¥15 clousx6整点报时指令怎么写
  • ¥30 远程帮我安装软件及库文件
  • ¥15 关于#自动化#的问题:如何通过电脑控制多相机同步拍照或摄影(相机或者摄影模组数量大于60),并将所有采集的照片或视频以一定编码规则存放至规定电脑文件夹内
  • ¥20 深信服vpn-2050这台设备如何配置才能成功联网?