mappls-map-react-native
Version:
A Mappls GL react native module for creating custom maps
27 lines (21 loc) • 828 B
text/typescript
import { type Permission, PermissionsAndroid } from "react-native";
import { isAndroid } from "./utils";
export async function requestAndroidLocationPermissions(): Promise<boolean> {
if (isAndroid()) {
const res = await PermissionsAndroid.requestMultiple([
PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION as Permission,
PermissionsAndroid.PERMISSIONS.ACCESS_COARSE_LOCATION as Permission,
]);
if (!res) {
return false;
}
const permissions = Object.keys(res);
for (const permission of permissions) {
if (res[permission as Permission] === PermissionsAndroid.RESULTS.GRANTED) {
return true;
}
}
return false;
}
throw new Error("You should only call this method on Android!");
}