HC 05蓝牙模块未与Android连接

时间:2016-04-22 15:41:45

标签: java android bluetooth arduino

我正在为盲人做一个智能手杖伴侣项目,引导他们走路,避开他们路上的障碍。 它涉及将Android手机与HC 05蓝牙模块配对。 HC 05蓝牙模块连接到Arudino UNO板。 HC 05未与Android连接。 这是我在android上编写的连接代码。 注意:此活动以列表视图的形式列出配对设备,设备的地址和名称来自上一个活动。

    import android.app.Activity;
        import android.bluetooth.BluetoothAdapter;
        import android.bluetooth.BluetoothDevice;
        import android.bluetooth.BluetoothSocket;
        import android.os.Bundle;
        import android.view.View;
        import android.widget.AdapterView;
        import android.widget.ArrayAdapter;
        import android.widget.ListView;
        import android.widget.Toast;

        import java.io.IOException;
        import java.util.UUID;

/**
 * Created by Stealth on 20-04-2016.
 */
public class PairingList extends Activity
{
    ListView lview;
    String paires[];
    String macs[];
    ArrayAdapter<String> adapter;
    String btdevices[];
    BluetoothSocket btSocket;
    BluetoothDevice device;
    BluetoothAdapter btadapter;
    int BLUETOOTH_REQUEST = 1;
    private static final UUID MY_UUID = UUID.fromString("a60f35f0-b93a-11de-8a39-08002009c666");
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.pairinglist);
        lview = (ListView)findViewById(R.id.listviewid);
        btadapter = BluetoothAdapter.getDefaultAdapter();
        Bundle bn = getIntent().getExtras();
        paires = bn.getStringArray("paires");
        macs = bn.getStringArray("macs");
        adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,paires);
        lview.setAdapter(adapter);
        lview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                String address = macs[position];
                device = btadapter.getRemoteDevice(address);
                try {
                    btSocket = device.createRfcommSocketToServiceRecord(MY_UUID);
                }
                catch (IOException e)
                {
                    Toast.makeText(getBaseContext(),"e" + "     "+ address,Toast.LENGTH_LONG).show();
                }
                btadapter.cancelDiscovery();
                try {
                    btSocket.connect();
                    Toast.makeText(getBaseContext(),"Connected to Device",Toast.LENGTH_LONG);
                }
                catch (IOException e1)
                {
                    Toast.makeText(getBaseContext(),"e1"+"     " + address,Toast.LENGTH_LONG).show();

                }


            }
        });

    }
}

问题是异常e1总是触发。 我在地址中有HC 05模块的MAC地址 MAC地址为98:D3:31:40:9A:D2 HC 05仍然没有连接到安卓任何帮助将获得很多赞赏 谢谢!!!

1 个答案:

答案 0 :(得分:0)

也许尝试将UUID更改为“00001101-0000-1000-8000-00805f9b34fb”?我过去使用这个uuid将HC-05连接到Android设备。

或者您可以尝试使用getUuids()来查找蓝牙发现的每个设备的所有已发布服务及其关联的UUID值,然后使用可用的UUID。