发现后如何连接蓝牙设备?

时间:2013-02-14 07:16:27

标签: android bluetooth

我扫描设备,我想连接到另一台设备“HC-07”,如果它进入范围或启用我的Android设备。我尝试一些但没有连接...任何帮助?我使用uuid串行连接到另一个蓝牙设备...

 private final BroadcastReceiver ActionFoundReceiver = new BroadcastReceiver(){

    @Override
    public void onReceive(Context context, Intent intent) {
        // TODO Auto-generated method stub
        String action = intent.getAction();
        if(BluetoothDevice.ACTION_FOUND.equals(action)) {
             device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);

            short rssi = intent.getShortExtra(BluetoothDevice.EXTRA_RSSI, Short.MIN_VALUE);//find rssi dBm

            int pair_state = device.getBondState();

            if(device.getName()=="HC-07"){
                try {
                openBT();
                Toast.makeText(getBaseContext(),"HC-07 found", Toast.LENGTH_SHORT).show();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
                    }
                }

            if (pair_state == 12){ pair_str="Paired";

            btArrayAdapter.add("Dev name: "+ device.getName() + "\n" + "Mac: " + device.getAddress() + "\n" + "Signal RSSI: " + rssi + "dBm" + "\n"+pair_str);

            }

            btArrayAdapter.notifyDataSetChanged();

        }
    }};

     void openBT() throws IOException
    {
        UUID uuid = UUID.fromString("00001101-0000-1000-8000-00805f9b34fb"); 
        mmSocket = device.createRfcommSocketToServiceRecord(uuid);       
        mmSocket.connect();
        mmOutputStream = mmSocket.getOutputStream();
    }

1 个答案:

答案 0 :(得分:0)

您是否仔细查看过提供的BluetoothChat示例?这将向您展示如何扫描和连接蓝牙设备以及如何使用API​​来执行此操作。 http://developer.android.com/resources/samples/BluetoothChat/index.html

查看以下示例:

Bluetooth Basics

http://developer.android.com/resources/samples/BluetoothChat/index.html

Code samples for Android Bluetooth programming

http://marakana.com/forums/android/examples/50.html