我正在创建一个示例蓝牙聊天应用程序。在单击可用的蓝牙设备时,我正在尝试连接到侦听服务器套接字的设备。
但是,在客户端线程中,当我调用deviceToConnect.createRfcommSocketToServiceRecord(UUID.fromString("myuuid"))
时,应用程序崩溃了。
ListView上的OnClickListener
newList.setOnItemClickListener(new AdapterView.OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Toast.makeText(getApplicationContext(),newDeviceList.get(position).getName(),Toast.LENGTH_SHORT).show();
ClientThread thread1 = new ClientThread(newDeviceList.get(position));
thread1.start();
}
});
客户端线程我正在尝试启动
public ClientThread(BluetoothDevice deviceToConnect)
{
try {
socket1 = deviceToConnect.createRfcommSocketToServiceRecord(UUID.fromString("myuuid"));
} catch (IOException e) {
// e.printStackTrace();
}
}
public void run()
{
// BluetoothAdapter.getDefaultAdapter().cancelDiscovery();
}
虽然我没有实现run方法,但是当我调用线程构造函数本身时,应用程序似乎崩溃了。我做错了哪里?