Skip to main content

REACT NATIVE DEVICE PERMISSIONS

Write uses permissions in  “Project/android/app/src/main/AndroidManifest.xml”

    <uses-permission android:name="android.permission.INTERNET" />   
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.RECORD_AUDIO"/>
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

    <!-- setMicrophoneMute() and setSpeakerphoneOn() -->
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
       
    <!-- setBrightness() & setScreenMode() & saveBrightness() -->
    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
   
    <!-- isWifiEnabled() -->
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
   
    <!-- isBluetoothEnabled() -->
    <uses-permission android:name="android.permission.BLUETOOTH"/>
   
    <!-- * switchWifiSilence() -->
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>

    <!-- * switchBluetoothSilence() -->
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>

    <!-- * getCurrentPosition() -->
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

    <!-- * getCoarsePosition() -->
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
________________________________________

USE this function to take permission

async function requestCameraPermission() {
        try {
          const grantedCAMERA = await PermissionsAndroid.request(
            PermissionsAndroid.PERMISSIONS.CAMERA,
            {
              title: 'Permission to use Camera',
              message: 'App needs access to your camera',           
              buttonNegative: 'Cancel',
              buttonPositive: 'OK',
            },
          );
          const grantedRECORD_AUDIO = await PermissionsAndroid.request(
            PermissionsAndroid.PERMISSIONS.RECORD_AUDIO,
            {
              title: 'Permission to use Mic',
              message: 'App needs access to your mic',            
              buttonNegative: 'Cancel',
              buttonPositive: 'OK',
            },
          );
          const grantedWRITE_EXTERNAL_STORAGE = await PermissionsAndroid.request(
            PermissionsAndroid.PERMISSIONS.WRITE_EXTERNAL_STORAGE,
            {
              title: 'Permission to use storage',
              message: 'App needs access to your storage',            
              buttonNegative: 'Cancel',
              buttonPositive: 'OK',
            },
          );

          if( grantedCAMERA === PermissionsAndroid.RESULTS.GRANTED &&
              grantedRECORD_AUDIO === PermissionsAndroid.RESULTS.GRANTED &&
              grantedWRITE_EXTERNAL_STORAGE === PermissionsAndroid.RESULTS.GRANTED
            )
{
            console.log('Camera prop recording use the camera');
            Actions.jump('home');
          } else {
            console.log('Camera prop recording  permission denied');
            Alert.alert(
              "PERMISSION DENIED",
              "Permission required to continue.",
              [{
                text: "OK",
                style: "cancel"
                },                 
              ],
              { cancelable: true }
            )
          }
        } catch (err) {
          console.warn("Camera prop recording ERR :" ,err);
          Alert.alert(
            "PERMISSION ERROR",
            "You need to allow camera access.",
            [{
              text: "OK",
              style: "cancel"
              },                 
            ],
            { cancelable: true }
          )

        }
      }

Comments

Popular posts from this blog

NGrok Setup

 https://dashboard.ngrok.com/get-started/setup 1. Unzip to install On Linux or Mac OS X you can unzip ngrok from a terminal with the following command. On Windows, just double click ngrok.zip to extract it. unzip /path/to/ngrok.zip 2. Connect your account Running this command will add your authtoken to the default ngrok.yml configuration file. This will grant you access to more features and longer session times. Running tunnels will be listed on the endpoints page of the dashboard. ngrok config add-authtoken 1woFn9zVqcI4VeGuSIiN2VtmnPa_ZXuAuF1AAPkqApr7WVsQ 3. Fire it up Read the documentation on how to use ngrok. Try it out by running it from the command line: ngrok help To start a HTTP tunnel forwarding to your local port 80, run this next: ngrok http 80

Update Node on Mac and Windows

Using brew: brew update brew upgrade node Using nvm:   NVM (Node Version Manager) is a tool that allows you to manage multiple versions of Node on your system. You can use nvm to install, update, and switch between different versions of Node. To update your version of Node using nvm, do the following: 1. Check if you already have nvm installed on your system:   
nvm --version 2. If it's not installed, install nvm using this command:    
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash 3. Once nvm is installed, check your current version of Node by running the following command: 
node -v 4. Then update your version of Node using the following command:   
nvm install node --reinstall-packages-from=node 5. And finally, verify that your update is complete by rechecking your Node version:   
node -v ———————————————————————————————————— Using NPM: To update Node using NPM, do the following: 1. Open the Terminal and check your curren...

Build commands

yarn ios --simulator="iPhone 11 Pro" yarn ios --simulator="iPhone 11" yarn ios --simulator="iPhone X” nvm use 16.13.1 nvm use 16.14.0 yarn nx affected --target=typecheck --parallel=3 yarn nx affected --target=lint --parallel=3 yarn nx format:write