为了账号安全,请及时绑定邮箱和手机立即绑定

中断数据流并断开设备连接

中断数据流并断开设备连接

犯罪嫌疑人X 2021-08-26 20:17:27
基本上我正在创建一个通过蓝牙与两个设备进行通信的应用程序。一开始我连接到第一个设备,然后连接到第二个。此时我开始从两个设备中恢复数据(一个流数)。当用户单击“停止”时,我必须停止读取此数据并断开连接的设备。我怎样才能按照你的方式来实现这个?我使用 react-native-ble-plx 库第一个问题是关于函数“stopConnection(设备)”我应该传递设备的值:this.model(this.props.device)。目前我收到错误。 Cannot read property 'cancelConnection' of undefined第二个问题是数据流是连续的,所以当我点击停止按钮大约 10 秒之前通过停止(“尝试停止 xD”)。谢谢 constructor(props) {    super(props);    this.manager = new BleManager();    this.state = {      acc: [],      gyr: [],      mg: [],};scanDx() {    this.manager.startDeviceScan(null, null, (error, device) => {      if (error) {        return;      }      if (device.name == this.model_dx(this.props.ModelDevice)) {        this.manager.stopDeviceScan();        device          .connect()          .then(() => {            console.log("ConnectedDX.");            console.log(" ");            this.scanSx();          })          .then(() => {            this.deviceService_Dx(device);          })          .catch(() => {            Alert.alert("Alert.");            Actions.homepage();          });      }    });  }stopConnection (device) {    device.cancelConnection()    return new Promise((resolve, reject) => {      resolve(console.log("Disconnected."))    })  }  render() {    device = this.model_dx(this.props.deviceModel)    const pressure = this.state.values.hasOwnProperty(this.Pressure)      ? this.state.values[this.Pressure].join(" ")      : "-";    return (      <View>        <Text>First Device </Text>          <Text>{"Time:" + this.state.time}</Text>          <Text>{"Acc:" + this.state.acc.join(" ")}</Text>          <Text>{"Gyr:" + this.state.gyr.join(" ")}</Text>          <Text>{"Mg:" + this.state.mg.join(" ")}</Text>          <Text>{"Pressure:" + pressure}</Text>          <Text>{"Msg:" + this.state.info}</Text>        <View>
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 212 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信