我构建了一个前台服务和计时器,它将每 45 秒向远程设备发送一些消息。我真的很确定服务正在工作,断点也停止在蓝牙Gatt.Connect((但OnConnectionStatusChanged在手机不充电时从未触发。我不知道这是安卓限制还是制造商限制。
有人有同样的问题吗?
我解决了这个问题,我只需要在主线程中调用BLE方法。
Handler handler = new (MainLooper);
handler.post(()=>{gatt.Connect();});