32 lines
691 B
JavaScript
32 lines
691 B
JavaScript
// @flow
|
|
|
|
import { Alert, Linking, NativeModules } from 'react-native';
|
|
|
|
import { Platform } from '../../base/react';
|
|
|
|
/**
|
|
* Opens the settings panel for the current platform.
|
|
*
|
|
* @private
|
|
* @returns {void}
|
|
*/
|
|
export function openSettings() {
|
|
switch (Platform.OS) {
|
|
case 'android':
|
|
NativeModules.AndroidSettings.open().catch(() => {
|
|
Alert.alert(
|
|
'Error opening settings',
|
|
'Please open settings and grant the required permissions',
|
|
[
|
|
{ text: 'OK' }
|
|
]
|
|
);
|
|
});
|
|
break;
|
|
|
|
case 'ios':
|
|
Linking.openURL('app-settings:');
|
|
break;
|
|
}
|
|
}
|