连接时扫描设备 - >停止扫描会关闭连接

时间:2017-10-04 07:37:50

标签: android rxandroidble

我正在使用RxAndroidBle库v 1.4.1。 我希望在连接到设备时每隔几秒扫描一次。问题是,当我停止扫描时(我不想一直扫描,只需每隔几秒),它会关闭与设备的连接。

rxBleClient.scanBleDevices(
    newScanSettings.Builder()
               .setScanMode(ScanSettings.SCAN_MODE_LOW_POWER)
               .build(),
     new ScanFilter.Builder()
                   .setServiceUuid("xyz")
                   .build()
)
.buffer(SCANNING_WINDOW_SECONDS, TimeUnit.SECONDS)
.first()
.repeatWhen(observable -> observable.delay(INTERVAL, TimeUnit.SECONDS));

我知道这种行为是记录在案的 " scanBleDevices() - 当取消订阅时,此Observable关闭/清理内部资源(即完成扫描,关闭连接,禁用通知)"

有没有解决方法?或者我是否必须在连接时浪费电池并一直扫描或根本不进行扫描?

EDIT 问题仅发生在某些设备上 - 例如。华硕Zenfone T100J。

scanDevices()
   .doOnNext(device -> {
        if(disconnected && device!=null){connect();}
    })

0 个答案:

没有答案