Как связать множественный доступ Bluetooth для записи больших данных с помощью RxBluetoothKit? - PullRequest
0 голосов
/ 14 марта 2019

Я хочу записать данные в файл размером более 100 КБ, поэтому мне нужно разделить данные и многократно записывать поверх BLE (более 8000 раз).Я хочу создать цепочку следующим образом: записать данные (с ответом) -> получить ответ -> записать данные (с ответом) -> ...

Как обеспечить порядок каждого доступа на запись (или следующий кодобеспечивает порядок)?

Мой текущий код выглядит следующим образом:

for index in stride(from: 0, to: data.count, by: maximumDataLength) {
    let endIndex = (index + maximumDataLength <= data.count) ? (index + maximumDataLength - 1) : (data.count - 1)

    let disposable = p.writeValue(data.subdata(in: startIndex ..< endIndex + 1), for: BLECharacteristic.otaData, type: .withResponse).asObservable()
    .take(1)
    .subscribe(onNext: { char in
    }, onError: { error in
    }, onCompleted: {
    }, onDisposed: {
    })
}  
...