Ios react本机信标管理器可以';没有检测到任何信标
以下是如何使用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
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和不同的主要/次要信标,以便您确定用户所在的位置。