我正在创建一个连接到嵌入式蓝牙芯片的项目。目前我已经设置了一个单独的应用程序类来控制所有蓝牙功能。
我的程序使用一个包含9个按钮的主菜单进行初始化。在主屏幕中,我创建了与蓝牙设备的连接。每个按钮都会将我带到一个单独的Activity。每项活动都需要从蓝牙芯片接收不同的数据。
我的问题是,对我来说,使用服务而不是应用程序是否合理?根据我对服务的理解,使用它是因为总有一些东西在后台运行。但是在这种情况下,不需要在后台运行任何东西(除非保持与蓝牙设备的连接计数),只有在活动要求时才发送/接收数据。
或者,我完全偏离轨道,不应该使用它们吗?只是一个简单的类充当我的数据容器,可以通过意图传递?我知道这会有效,但对于Android来说它是一个新手,并且意图似乎有些混乱。如果我不需要,我宁愿不使用意图。
答案 0 :(得分:1)
我也正在构建一个蓝牙连接,我将整个通信内容放在一个服务中,并与每个需要使用该连接的活动绑定到此服务。这对我很有用。您可能也想选择这种方式。
实际上我之前已经意识到在应用程序中保持连接的方式,但现在我更喜欢服务方式,因为我正在将应用程序用于全局状态。
使用服务还可以减少对意图的需求:)
答案 1 :(得分:1)
在您的情况下,蓝牙连接的静态属性将是最实用的解决方案