Ionic 2: как я могу использовать такие функции, как startStateNotifications(), используя плагин BLE от ionic-native?
В настоящее время я использую https://github.com/don/cordova-plugin-ble-central в приложении Ionic 1. Я конвертирую это приложение в Ionic 2, поэтому я хочу использовать этот плагин через ionic-native.
Проблема в том, что некоторые функции плагина не доступны через ionic-native. Например, функция ble.startStateNotifications(success, failure);
не доступно с ионно-нативным, тогда как ble.isEnabled(success, failure);
есть (оба доступны в cordova-plugin-ble-central).
Нужно ли использовать плагин без ionic-native, чтобы использовать все его методы?
==================
РЕДАКТИРОВАТЬ
Наконец, я использовал плагин напрямую (вне ionic-native) и преобразовал функции обратного вызова в Observables следующим образом:
import { Injectable } from '@angular/core';
import { Observable } from 'rxjs/Observable';
declare var ble;
@Injectable()
export class BLEService {
constructor() {}
BLEstartStateNotifications() {
return new Observable((observer) => {
ble.startStateNotifications((state) => {
observer.next(state);
}, (err) => {
observer.error(err);
});
});
}
}
И тогда вы можете вызвать функцию в качестве наблюдаемой:
this.BLEstartStateNotifications().subscribe((state) => {
console.log(state);
}, (error) => {
console.log(error);
});