Как использовать второй параметр обратного вызова плагина Cordova? - PullRequest
0 голосов
/ 05 августа 2020

У меня проблема с порядком следования при чтении данных из ble. Эта проблема упоминается здесь

Версия 1.2.4 из cordova-plugin-ble-central имеет новый параметр, позволяющий получить порядок последовательности и оставить возможность клиент переупорядочивает пакет. PR - , здесь . Итак, у обратного вызова есть второй параметр, который является порядковым номером:

ble.startNotification("device", "service", "characteristic", function (data, sequence) {
    /*
     * The sequence parameter will be undefined on iOS.  On Android it will be 
     * monotonically increasing, starting at 0 for the first call to this callback function
     * and then increasing by 1 for each callback in order.  There will be no gaps in
     * the sequence number so it is safe to wait forever for the next expected number.
     *
     * So, if you receive sequence 0 and then 2, it is guaranteed that 1 has already been 
     * processed by the plugin and dispatched into a queue for delivery so it will arrive
     * to your callback.
     */ 
}, function (err) {});

Как я могу использовать этот порядковый номер в моем приложении ioni c? Я получаю Observable и не вижу, как получить доступ к этому параметру:

this.ble.startNotification(device.handle,
BSC_SERVICE_UUID,
BSC_OUTPUT_CHARACTERISTIC_UUID).subscribe(y => {
         const x = new Uint8Array(y);
         ....
 });

1 Ответ

0 голосов
/ 17 августа 2020

Обертка ioni c выдавала только массив данных. Я отправил объединенный запрос в ioni c -native репозиторий сюда . Теперь версия 5.28.0 генерирует массив с индексом 0 данными и индексом 1 порядком следования

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...