scandit_app/ScanBasicLabs/app/camera-permission-handler.js
Samuel Assani d1728951c5 first Push
2021-11-09 14:04:49 +01:00

41 lines
1.1 KiB
JavaScript

import { PermissionsAndroid, Platform } from 'react-native';
const isAndroidMarshmallowOrNewer = Platform.OS === 'android' && Platform.Version >= 23
export const checkCameraPermissions = async () => {
if (isAndroidMarshmallowOrNewer) {
return await PermissionsAndroid.check(PermissionsAndroid.PERMISSIONS.CAMERA);
} else {
return true;
}
}
//
export const requestCameraPermissions = async () => {
if (isAndroidMarshmallowOrNewer) {
try {
const granted = await PermissionsAndroid.request(PermissionsAndroid.PERMISSIONS.CAMERA);
if (granted === PermissionsAndroid.RESULTS.GRANTED) {
console.log("Android Camera Permission has been granted.");
return Promise.resolve();
} else {
console.log("Android Camera Permission has been denied.");
return Promise.reject()
}
} catch (err) {
return Promise.reject(err)
}
} else {
return Promise.resolve()
}
}
export const requestCameraPermissionsIfNeeded = async () => {
const hasPermissions = await checkCameraPermissions();
if (!hasPermissions) {
return requestCameraPermissions();
} else {
return Promise.resolve();;
}
}