Cordova BLE Central - Как заменить RSSI, если адрес ma c уже существует - PullRequest
0 голосов
/ 13 июля 2020

Я использую Cordova BLE Central для сканирования ближайших устройств. Если устройство BLE уже просканировано, должно обновляться только значение rssi, и для того же ниже находится файл home.page.ts, который я использую,

import { Component, NgZone } from '@angular/core';
import { BLE } from '@ionic-native/ble/ngx';


@Component({
  selector: 'app-home',
  templateUrl: 'home.page.html',
  styleUrls: ['home.page.scss'],
})
export class HomePage {

  devices:any[] = [];
    
  constructor(private ble:BLE,private ngZone: NgZone) 
  {
    
  }
  Scan(){
    console.log("Scan......")
    this.devices = [];
    
    this.ble.startScan([],).subscribe(
      device => this.onDeviceDiscovered(device)
    );
  }
  
  onDeviceDiscovered(device){
    console.log('Discovered' + JSON.stringify(device,null,2));
    
    this.ngZone.run(()=>{
      // this.devices.push(device)
      if(this.devices.findIndex((dev:any)=>dev.id===device.id)==-1)
            this.devices.push(device);
            console.log(device)
    })

  }   
  
}

Приложение, которое у меня сейчас, возвращается, Ответ текущего заявления

Теперь у меня вопрос: если ma c уже отображается на HTML, как обновить только его значение RSSI?

...