36 lines
838 B
TypeScript
36 lines
838 B
TypeScript
import { requireNativeModule } from 'expo-modules-core';
|
|
import { Platform } from 'react-native';
|
|
|
|
let KioskMode: any = null;
|
|
if (Platform.OS === 'android') {
|
|
try {
|
|
KioskMode = requireNativeModule('KioskMode');
|
|
} catch (e) {
|
|
console.warn('KioskMode native module not found');
|
|
}
|
|
}
|
|
|
|
export interface KioskModeInterface {
|
|
startKiosk(): boolean;
|
|
stopKiosk(): boolean;
|
|
isKioskActive(): boolean;
|
|
isDeviceOwner(): boolean;
|
|
}
|
|
|
|
const KioskModeProxy: KioskModeInterface = {
|
|
startKiosk() {
|
|
return KioskMode ? KioskMode.startKiosk() : false;
|
|
},
|
|
stopKiosk() {
|
|
return KioskMode ? KioskMode.stopKiosk() : false;
|
|
},
|
|
isKioskActive() {
|
|
return KioskMode ? KioskMode.isKioskActive() : false;
|
|
},
|
|
isDeviceOwner() {
|
|
return KioskMode ? KioskMode.isDeviceOwner() : false;
|
|
}
|
|
};
|
|
|
|
export default KioskModeProxy;
|