我在使用scanBleDevices方法傳遞一個(有效)UUID時遇到了問題 - 訂閱永遠不會觸發。目前我有一個使用通常的Android掃描,連接,讀/寫方法的工作原型,但我想更新RxAndroidBle的語法,使事情更安全,更易於閱讀。RxAndroidBle scanBleDevices(UUID ...)not firing
這裏是我的RxAndroidBle實現 - 不工作/訂閱從未火災:
你可能會想,我的UUID是錯的,但在這裏的是,我沒有用一個非常一些替代的實現有狀態的前一版本 - 相同的UUID,這個工程:
mLeScanCallback將被觸發。
我使用RxAndroidBle版本1.2.2 &我的手機是一臺Nexus 6P的Android 6.0.1版本
一些額外的信息: 如果我使用scanBleDevices(),沒有參數,我可以找到我想要的rxBleScanResult檢查製造數據中的某些內容,而我仍然會這樣做。但我想過濾UUID以確保安全。當我找到我想要的包字節[]時,我嘗試使用(不建議使用的) new UUIDUtil().extractUUIDs(rxBleScanResult.getScanRecord())
來提取我的UUID,但是這返回了一個空列表。只是爲了更好地指出一些事情,當我使用老式的mLeScanCallback時,上面的extractUUIDS也會產生一個空列表。
謝謝你的時間!
This Works!謝謝s_noopy!我想知道你對RxAndroidBle的健康狀況的看法。他們修理東西的速度非常快 - 但是這可能不是生產準備?我喜歡這個圖書館。無論如何,我想我會繼續。 – Ethan
因此,實際上,基於ScanPackage字節數組的過濾與scanBleDevices(UUID ...)方法上的過濾相同?好吧! – Ethan
該庫已在多個不同項目中用於生產,如果您的外圍設備不更改服務並且未使用加密特徵 - 它已準備好使用 - 上述問題接近解決。我沒有收到ScanPackage部分。 –