UNPKG

@hajajiya/test-sdk

Version:

This plugin allows to use the SDK in your React Native mobile application on iOS and Android.

70 lines (57 loc) 1.43 kB
import { NativeEventEmitter, NativeModules } from 'react-native' if (!NativeModules.RNRoam) { throw new Error('NativeModules.RNRoam is undefined') } const eventEmitter = new NativeEventEmitter(NativeModules.RNRoam) const requestLocationPermission = () => { NativeModules.RNRoam.requestLocationPermission() } const startListener = (event, callback) => eventEmitter.addListener(event, callback) const stopListener = (event) => { eventEmitter.removeAllListeners(event) } const setForegroundNotification = ( enabled, title, description, image, activity, roamService ) => { NativeModules.RNRoam.setForegroundNotification( enabled, title, description, image, activity, roamService ) } const disableBatteryOptimization = () => { NativeModules.RNRoam.disableBatteryOptimization() } const requestPhoneStatePermission = () => { NativeModules.RNRoam.requestPhoneStatePermission() } const allowMockLocation = (enabled) => { NativeModules.RNRoam.allowMockLocation(enabled) } const startTracking = (trackingMode) => { NativeModules.RNRoam.startTracking(trackingMode) } const stopTracking = () => { NativeModules.RNRoam.stopTracking() } const Roam = { requestLocationPermission, startListener, stopListener, setForegroundNotification, disableBatteryOptimization, requestPhoneStatePermission, allowMockLocation, startTracking, stopTracking } export default Roam