diff --git a/Libraries/PermissionsAndroid/NativePermissionsAndroid.js b/Libraries/PermissionsAndroid/NativePermissionsAndroid.js index 025f9af1841..4212164d8ba 100644 --- a/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +++ b/Libraries/PermissionsAndroid/NativePermissionsAndroid.js @@ -56,4 +56,4 @@ export interface Spec extends TurboModule { ) => Promise<{[permission: PermissionType]: PermissionStatus}>; } -export default TurboModuleRegistry.getEnforcing('PermissionsAndroid'); +export default TurboModuleRegistry.get('PermissionsAndroid'); diff --git a/Libraries/PermissionsAndroid/PermissionsAndroid.js b/Libraries/PermissionsAndroid/PermissionsAndroid.js index 1b414e71165..427fb21c8a1 100644 --- a/Libraries/PermissionsAndroid/PermissionsAndroid.js +++ b/Libraries/PermissionsAndroid/PermissionsAndroid.js @@ -11,10 +11,11 @@ 'use strict'; import NativeDialogManagerAndroid from '../NativeModules/specs/NativeDialogManagerAndroid'; -const NativeModules = require('../BatchedBridge/NativeModules'); const Platform = require('../Utilities/Platform'); import NativePermissionsAndroid from './NativePermissionsAndroid'; +import invariant from 'invariant'; + import type { PermissionStatus, PermissionType, @@ -90,6 +91,11 @@ class PermissionsAndroid { return Promise.resolve(false); } + invariant( + NativePermissionsAndroid, + 'PermissionsAndroid is not installed correctly.', + ); + return NativePermissionsAndroid.checkPermission(permission); } @@ -106,6 +112,12 @@ class PermissionsAndroid { ); return Promise.resolve(false); } + + invariant( + NativePermissionsAndroid, + 'PermissionsAndroid is not installed correctly.', + ); + return NativePermissionsAndroid.checkPermission(permission); } @@ -158,6 +170,11 @@ class PermissionsAndroid { return Promise.resolve(this.RESULTS.DENIED); } + invariant( + NativePermissionsAndroid, + 'PermissionsAndroid is not installed correctly.', + ); + if (rationale) { const shouldShowRationale = await NativePermissionsAndroid.shouldShowRequestPermissionRationale( permission, @@ -197,6 +214,11 @@ class PermissionsAndroid { return Promise.resolve({}); } + invariant( + NativePermissionsAndroid, + 'PermissionsAndroid is not installed correctly.', + ); + return NativePermissionsAndroid.requestMultiplePermissions(permissions); } }