BLE连接的后台服务

时间:2017-06-30 19:06:20

标签: java android

我需要实现后台服务,通过BLE扫描设备并在发现时与我的BLE设备连接。所以我的问题是我应该使用哪些服务?

  • IntentService
  • JobSheduler

2 个答案:

答案 0 :(得分:2)

我建议使用serviceIntentService也可以达到目的)。 Android documentation整齐地捕获了所涉及的主要步骤。那里的示例代码使用service来演示API用法: -

public class BluetoothLeService extends Service {
    private final static String TAG = BluetoothLeService.class.getSimpleName();

    private BluetoothManager mBluetoothManager;
    private BluetoothAdapter mBluetoothAdapter;
    .........
    .........
    .........

答案 1 :(得分:1)

两者都可以解决您的问题,这取决于您希望如何进行扫描。意图服务仅适用于满足特定条件的一次性扫描,并且您激活意图服务以开始扫描,但在完成扫描任务后,使用意图服务注意服务停止并遵循其他生命周期方法。因此,只有在存在控制何时启动服务的外部条件时才会起作用。现在,作业调度程序将涉及轮询,这将是您最好的情况,因为它需要连续轮询并且将是完美的但您需要考虑您的时间。我个人建议扩展服务类并从清单中导出它,以便它在后台生存。

相关问题