Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios react本机信标管理器可以';没有检测到任何信标_Ios_React Native_Ibeacon - Fatal编程技术网

Ios react本机信标管理器可以';没有检测到任何信标

Ios react本机信标管理器可以';没有检测到任何信标,ios,react-native,ibeacon,Ios,React Native,Ibeacon,以下是如何使用react本机信标管理器的示例: 但我在这一地区找不到任何信标,即使我身上有一个信标装置。我对这里的硬编码区域很困惑: const region = { identifier: 'Estimotes', uuid: 'B9407F30-F5F8-466E-AFF9-25556B57FE6D' }; 这些标识符和UUID是什么?使用它安全吗?还是我应该把它放在某个地方开始探测信标?这是我的相关代码,我省略了一些不相关的代码: import Bea

以下是如何使用react本机信标管理器的示例: 但我在这一地区找不到任何信标,即使我身上有一个信标装置。我对这里的硬编码区域很困惑:

const region = {
       identifier: 'Estimotes',
       uuid: 'B9407F30-F5F8-466E-AFF9-25556B57FE6D'
   }; 
这些标识符和UUID是什么?使用它安全吗?还是我应该把它放在某个地方开始探测信标?这是我的相关代码,我省略了一些不相关的代码:

import Beacons from 'react-native-beacons-manager';

class HomeTab extends Component {
  constructor(props) {
   super(props);
   var ds = new ListView.DataSource({
    rowHasChanged: (r1, r2) => r1 !== r2 }
  );
   this.state = {
     region: {
       latitude: LATITUDE,
       longitude: LONGITUDE,
       latitudeDelta: LATITUDE_DELTA,
       longitudeDelta: LONGITUDE_DELTA,
        dataSource: ds.cloneWithRows([])
     }
   };
 }

componentWillMount(){

     Beacons.requestAlwaysAuthorization();

     const region = {
       identifier: 'Estimotes',
       uuid: 'B9407F30-F5F8-466E-AFF9-25556B57FE6D'
   };


   Beacons.startMonitoringForRegion(region) // or like  < v1.0.7: .startRangingBeaconsInRegion(identifier, uuid)
   .then(() => console.log('Beacons monitoring started succesfully'))
   .catch(error => console.log(`Beacons monitoring not started, error: ${error}`));
   // Range for beacons inside the region
   Beacons.startRangingBeaconsInRegion(region) // or like  < v1.0.7: .startRangingBeaconsInRegion(identifier, uuid)
   .then(() => console.log('Beacons ranging started succesfully'))
   .catch(error => console.log(`Beacons ranging not started, error: ${error}`));
   // update location to ba able to monitor:
   Beacons.startUpdatingLocation();
 }

componentDidMount(){
 this.beaconsDidRangeEvent = DeviceEventEmitter.addListener(
       'beaconsDidRange',
       (data) => {
         console.log('beaconsDidRange data: ', data);

       }
     );

  this.beaconsDidRangeEvent = Beacons.BeaconsEventEmitter.addListener(
    'beaconsDidRange',
    (data) => {
      console.log('beaconsDidRange data: ', data);

    }
  );

     // monitoring events
     this.regionDidEnterEvent = Beacons.BeaconsEventEmitter.addListener(
       'regionDidEnter',
       (data) => {
         console.log('monitoring - regionDidEnter data: ', data);

       }
     );

}
}
从'react native Beacons manager'导入信标;
类HomeTab扩展组件{
建造师(道具){
超级(道具);
var ds=new ListView.DataSource({
行已更改:(r1,r2)=>r1!==r2}
);
此.state={
地区:{
纬度:纬度,
经度:经度,
纬度三角洲:纬度三角洲,
经度三角洲:经度三角洲,
数据源:ds.cloneWithRows([])
}
};
}
组件willmount(){
Beacons.requestAlwaysAuthorization();
常量区域={
标识符:“估计值”,
uuid:'B9407F30-F5F8-466E-AFF9-25556B57FE6D'
};
Beacons.startMonitoringForRegion(region)//或类似的console.log('Beacons monitoring started successfully'))
.catch(error=>console.log(`Beacons monitoring not start,error:${error}`));
//区域内信标的范围
Beacons.startrangbeaconregion(region)//或类似的console.log('Beacons ranging started successfully'))
.catch(error=>console.log(`Beacons ranging not start,error:${error}`));
//更新位置以使ba能够监视:
信标。startUpdatingLocation();
}
componentDidMount(){
this.beaconsDidRangeEvent=DeviceEventEmitter.addListener(
"beacondrange",,
(数据)=>{
log('beacondrange data:',data);
}
);
this.beaconsDidRangeEvent=Beacons.BeaconsEventEmitter.addListener(
"beacondrange",,
(数据)=>{
log('beacondrange data:',data);
}
);
//监测事件
this.RegionDedenterEvent=Beacons.BeaconsEventEmitter.addListener(
“区域识别器”,
(数据)=>{
log('监视-区域标识符数据:',数据);
}
);
}
}

您在区域中指定的uuid必须与您的信标所宣传的uuid相匹配。@w11-hmm,您能进一步说明吗?我现在所在的地区错了吗?那是什么?那是一个国家吗?Estimote是一个灯塔品牌。您的信标将配置特定的UUID。您需要知道您的信标具有什么UUID(或将其设置为已知的值),然后在您的区域规范中指定该UUID。标识符不重要。可能是anything@Paulw11嗯,请告诉我,如果我的理解是正确的,我在我的应用程序中的目标是检测该区域的信标,能够实现我需要一个信标的UUID(我不能理解这一部分,因为我只想检测信标为什么我需要在我的应用程序中有一个信标的UUID)?那么你是在告诉我把我的样本信标的UUID放在我的应用程序中,以便能够检测到它?是的。信标有一个UUID、一个主要号码和一个次要号码。你必须至少知道你要找的UUID。您无法扫描“任何信标”。通常,一个组织或一个位置的所有信标都将配置相同的UUID和不同的主要/次要信标,以便您确定用户所在的位置。