我做了一个简单的应用程序,通过BT连接我的手机和Arduino,一切顺利。我的手机有Android 2.3.6 ......但是,当我在我的平板电脑上尝试应用程序(使用android 4.0.3)时,我无法连接。我在这里发布了具体的代码:
try {
BluetoothSocket socket = mydevice.createRfcommSocketToServiceRecord(UUID.fromString(ARDUINO_STANDAR_UUID));
socket.connect();
OutputStream output = socket.getOutputStream();
InputStream input = socket.getInputStream();
Log.d(TAG, "Connected");
}
catch (IOException e) { Log.e(TAG, e.getMessage()); }
}
使用Log,问题出在socket.connect();在那一点上,我必须输入设备的PIN,但它仍然没有连接...错误是“连接被拒绝”......
有什么不对?
答案 0 :(得分:0)
尝试这样的事情来处理连接。我刚刚在android-17上更新了一个旧的android-10应用程序并正好处理了这个问题。
BluetoothDevice yourDevice;
try {
Method m = yourDevice.getClass().getMethod( "createInsecureRfcommSocket", new Class[] { int.class } );
selectedDeviceSocket = (BluetoothSocket) m.invoke( yourDevice, Integer.valueOf( 1 ) );
selectedDeviceSocket.connect();
}