我目前正在撰写应用,并希望就最佳做法提供一些建议。
该应用程序的想法是打开它,扫描然后选择一个蓝牙设备(顺便说一下这是BLE)并连接到它。我每次收到通知或电话时都会通过蓝牙发送命令(这将在后台完成)。
我已经让扫描和连接部分工作,并知道我可以使用notificationlistenerservice和phonestatelistener(或类似的)来检测呼叫和放大器。通知。这些都将被设置为单独的服务。我也可以通过主要活动手动将串行数据发送到蓝牙模块。
我喜欢的建议是保持与蓝牙模块的连接并在收到通知/呼叫时向其发送特定命令(串行数据)的最佳方式。我应该运行服务来维护与模块的连接,还是应该复制每个服务的代码并在每次要向其发送数据时连接到模块?如果我有蓝牙连接的后台服务,我希望活动和呼叫/通知服务能够调用它上面的方法,然后将所需数据发送到模块。
希望这是有意义的,并提前感谢。