我正在尝试在 android 上创建一个服务器,它将监听传入的连接,例如我拥有的特定耳机。
我已经阅读了很多教程、StackOverflow 中的帖子和 Android|Developer 中的帖子,但我似乎不明白一些事情。
1)UUID,它是每个蓝牙设备的特定地址吗?还是需要在服务器和客户端中才能创建连接的共享密钥?我的猜测是后者,因为那里还有 MAC 地址......
2) 当我将耳机与手机配对时,耳机是否会保存上次配对设备的 MAC\UUID?
3)蓝牙芯片是否也能以这种方式工作?手机开机后立即连接到配对设备,所以我的猜测是它为每个配对设备打开一个 Socket 并等待它打开,这是真的吗?
4)是否有可能完成我正在尝试的事情?意味着创建一个将接受来自耳机的连接的 BluetoothServerSocket 吗?
服务器端的代码示例:
//This may b needs to be the UUID of the headset ? or special one ? or what ?
UUID myUUID = UUID.fromString("0000111e-0000-1000-8000-00805f9b34fb");
private final BluetoothServerSocket mServerSocket;
private BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
tmp = mBluetoothAdapter.listenUsingRfcommWithServiceRecord(Activity.APP_NAME, myUUID);
mServerScooket = tmp;
//Im hoping that this will block until the specific headset will be turned on
socket = mServerSocket.accept();
提前致谢。