1 回答

TA貢獻(xiàn)1859條經(jīng)驗 獲得超6個贊
您可以像這樣將所有要寫入的內(nèi)容串聯(lián)起來:
Single.concat(Arrays.asList(
rxBleMainConnection.writeCharacteristic(COMS_WRITE_CHAR_UUID, bytes0),
rxBleMainConnection.writeCharacteristic(COMS_WRITE_CHAR_UUID, bytes1),
rxBleMainConnection.writeCharacteristic(COMS_WRITE_CHAR_UUID, bytes2),
rxBleMainConnection.writeCharacteristic(COMS_WRITE_CHAR_UUID, bytes3),
// ...
rxBleMainConnection.writeCharacteristic(COMS_WRITE_CHAR_UUID, bytesn)
))
.subscribe(
characteristicValue -> {
// Written characteristic value.
Log.d(TAG, "Written command: " + Arrays.toString(characteristicValue));
},
throwable -> {
// Handle an error here.
Log.d(TAG, "Error writing command");
throwable.printStackTrace();
},
() -> {
Log.d(TAG, "All writes completed");
}
);
我鼓勵您看一下有關(guān)“多次寫入”的RxAndroidBle其他問題,這些問題已經(jīng)在本網(wǎng)站上問過。有些帖子可能會給您提示/想法。
附帶說明一下:最好創(chuàng)建僅使用單個代碼的代碼,.subscribe()因為這樣您便擁有需要自己管理的最少狀態(tài)。
添加回答
舉報