-
Notifications
You must be signed in to change notification settings - Fork 321
Open
Description
Version
1.2.9
Platform
Android
OS version
android 12
Steps to reproduce
import Beacons from '@mindsoftcreative/react-native-beacons-manager';
function App(): JSX.Element {
// eslint-disable-next-line @typescript-eslint/no-unused-vars
const [state, setState] = useState([]);
useEffect(() => {
requestLocationPermission();
Beacons.init();
Beacons.detectIBeacons();
const beaconsServiceDidConnect = Beacons.BeaconsEventEmitter.addListener(
'beaconServiceConnected',
() => {
console.log('service connected');
startRangingAndMonitoring();
},
);
const beaconsDidRange = DeviceEventEmitter.addListener(
'beaconsDidRange',
data => {
console.log('beaconsDidRange beacons!', data);
},
);
const regionDidEnter = DeviceEventEmitter.addListener(
'regionDidEnter',
data => {
console.log('regionDidEnter beacons!', data);
},
);
return () => {
console.debug('[app] main component unmounting. Removing listeners...');
stopRangingAndMonitoring();
beaconsServiceDidConnect.remove();
beaconsDidRange.remove();
regionDidEnter.remove();
};
}, []);
const startRangingAndMonitoring = async () => {
try {
const data1 = await Beacons.startRangingBeaconsInRegion('REGION3');
console.log('Beacons ranging started successfully', data1);
const data2 = await Beacons.startMonitoringForRegion('REGION3');
console.log('Beacons monitoring started successfully', data2);
} catch (error) {
console.log('error', error);
throw error;
}
};
const stopRangingAndMonitoring = async () => {
try {
await Beacons.stopRangingBeaconsInRegion('REGION3');
console.log('Beacons ranging stopped successfully');
await Beacons.stopMonitoringForRegion('REGION3');
console.log('Beacons monitoring stopped successfully');
} catch (error) {
throw error;
}
};
const requestLocationPermission = async () => {
try {
const granted = await PermissionsAndroid.request(
PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION,
{
title: 'Location Permission',
message:
'This example app needs to access your location in order to use bluetooth beacons.',
buttonNeutral: 'Ask Me Later',
buttonNegative: 'Cancel',
buttonPositive: 'OK',
},
);
if (granted === PermissionsAndroid.RESULTS.GRANTED) {
return true;
} else {
// permission denied
return false;
}
} catch (err) {
console.warn(err);
return false;
}
};
return (
<SafeAreaView style={styles.sectionContainer}>
<View>
<Text>Hello</Text>
</View>
</SafeAreaView>
);
}
Actual behavior
Console output:
Found beacons! {"beacons": [], "identifier": "REGION3", "uuid": ""}
Please help me.
Am I missing anything here?
Metadata
Metadata
Assignees
Labels
No labels