代码之家  ›  专栏  ›  技术社区  ›  Tejas Pandya

将Android与Arduino(HC-05)配对,无需手动输入pin

  •  3
  • Tejas Pandya  · 技术社区  · 7 年前

    我正在把一些字符串数据从android发送到arduino,这是HC-05。

    private BluetoothSocket createBluetoothSocket(BluetoothDevice device) throws IOException {
    
                try {
                    final Method  m = device.getClass().getMethod("createInsecureRfcommSocketToServiceRecord", new Class[] { UUID.class });
                    return (BluetoothSocket) m.invoke(device, MY_UUID);
                } catch (Exception e) {
                    Log.e(TAG, "Could not create Insecure RFComm Connection",e);
                }
    
            return  device.createRfcommSocketToServiceRecord(MY_UUID);
        }
    

    如你所见。它第一次尝试创造 InsecureRfcommSocket . 它使用不安全连接进行连接。可能会引起mitm攻击,所以我想使用安全通信 createRfcommSocketToServiceRecord

    我的问题是:

    1. 如何在没有用户插针输入干扰的情况下配对hc-05?(我试过意图过滤和广播接收器,但它不起作用(系统总是优先于我的接收器)
    2. 如果我想以编程方式输入pin,可以使用 device.setpin() 或者我应该按命令开火?
    0 回复  |  直到 7 年前