我正在开发一款Android应用,可以控制一些支持BLE的硬件。它还访问Server API并使用位置服务。 当前的应用程序将其组织为三种不同的服务:位置(系统服务),BLE服务和服务器服务。 这意味着很多广播都会进入应用程序的GUI部分以及Activity中的大量逻辑。 我想将更多功能转移到后台服务有两个原因: - 启用后台服务,以便在后台执行与BLE,服务器和接收位置的交互。 - 简化Activity和服务之间的接口(也使测试功能更容易)。
我希望在最佳解决方案方面提供一些“最佳实践”输入:
1:创建一个附加服务,该服务是活动的入口点,然后启动并与BLE,服务器和位置服务进行通信。
2:将我的服务器和BLE代码合并到一个服务中并为其添加位置?
我倾向于2,以避免过多的广播被抛出使事情变得更加复杂,即使有更多的功能被塞进一个服务。
有什么想法?对几个服务进行沟通的任何评论?
谢谢