如何通过蓝牙连接设备

时间:2018-12-28 09:32:44

标签: android bluetooth

我试图从蓝牙电路读取数据。当我尝试使用socket.connect()连接电路时,出现以下错误消息。

  

“ E /:读取失败,套接字可能关闭或超时,读取ret:-1”

Android版本-7.1.1

您能帮我解决这个问题吗?

public boolean Connect()
{
    boolean connected=true;
    try {
        socket = device.createRfcommSocketToServiceRecord(PORT_UUID);
        try {
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            socket.connect();
            Log.e("","Connected");
        } catch (IOException ex) {
            Log.e("", ex.getMessage());
            try {
                Log.e("", "trying fallback...");

                socket = (BluetoothSocket) device.getClass().getMethod("createInsecureRfcommSocket", new Class[]{int.class}).invoke(device, 1);
                socket.connect();

              //  Log.e("", "Connected");

            } catch (Exception e2) {
                Log.e("", "Couldn't establish Bluetooth connection!");
                connected=false;
            }
        }
    } catch (IOException e) {
        e.printStackTrace();
        connected=false;
    }

<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />

0 个答案:

没有答案