我正在为盲人做一个智能手杖伴侣项目,引导他们走路,避开他们路上的障碍。 它涉及将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仍然没有连接到安卓任何帮助将获得很多赞赏 谢谢!!!
答案 0 :(得分:0)
也许尝试将UUID更改为“00001101-0000-1000-8000-00805f9b34fb”?我过去使用这个uuid将HC-05连接到Android设备。
或者您可以尝试使用getUuids()来查找蓝牙发现的每个设备的所有已发布服务及其关联的UUID值,然后使用可用的UUID。