zoontek / react-native-permissions

An unified permissions API for React Native on iOS, Android and Windows.
MIT License
4.1k stars 836 forks source link

await request(PERMISSIONS.IOS.PHOTO_LIBRARY); is always unavailable #873

Closed ajen010 closed 5 months ago

ajen010 commented 6 months ago

Before submitting a new issue

Bug summary

const granted = await request(PERMISSIONS.IOS.PHOTO_LIBRARY); The code never allows granted = 'granted' the only value granted gets is 'unavailable'

Library version

4.1.5

Environment info

info Fetching system and libraries information...
System:
  OS: macOS 14.4.1
  CPU: (10) arm64 Apple M2 Pro
  Memory: 54.69 MB / 16.00 GB
  Shell:
    version: 3.2.57
    path: /bin/bash
Binaries:
  Node:
    version: 18.20.1
    path: ~/.nvm/versions/node/v18.20.1/bin/node
  Yarn: Not Found
  npm:
    version: 10.5.0
    path: ~/.nvm/versions/node/v18.20.1/bin/npm
  Watchman:
    version: 2024.04.01.00
    path: /opt/homebrew/bin/watchman
Managers:
  CocoaPods:
    version: 1.14.3
    path: /Users/andrewjennings/.rvm/gems/ruby-3.1.4/bin/pod
SDKs:
  iOS SDK:
    Platforms:
      - DriverKit 23.2
      - iOS 17.2
      - macOS 14.2
      - tvOS 17.2
      - visionOS 1.0
      - watchOS 10.2
  Android SDK: Not Found
IDEs:
  Android Studio: 2023.2 AI-232.10300.40.2321.11567975
  Xcode:
    version: 15.2/15C500b
    path: /usr/bin/xcodebuild
Languages:
  Java:
    version: 20.0.2.1
    path: /usr/bin/javac
  Ruby:
    version: 3.1.4
    path: /Users/ajen010/.rvm/rubies/ruby-3.1.4/bin/ruby
npmPackages:
  "@react-native-community/cli": Not Found
  react:
    installed: 18.2.0
    wanted: 18.2.0
  react-native:
    installed: 0.73.6
    wanted: 0.73.6
  react-native-macos: Not Found
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: true
  newArchEnabled: false
iOS:
  hermesEnabled: true
  newArchEnabled: false

Steps to reproduce

npm install --save react-native-permissions

import RNPermissions, { openSettings, PERMISSIONS, request } from 'react-native-permissions'; const checkImagePermission = async () => { const granted = await request(PERMISSIONS.IOS.PHOTO_LIBRARY); console.log("granted ",granted); }

Reproducible sample code

checkImagePermission()
ajen010 commented 6 months ago

I am happy to pay to have this bug fixed.

zoontek commented 6 months ago

@ajen010 Could you give me access to a repository?

ajen010 commented 6 months ago

I'll have to upload the files to a repo, I'm doing everything on my local. Give me a second.

tanishaCodebrew commented 6 months ago

i also need this solution

ajen010 commented 6 months ago

Ok I invited you to the private repo @zoontek zoontek

ajen010 commented 6 months ago

The RNPermissions is used in the ImagePicker.js component.

zoontek commented 6 months ago

@ajen010 I don't have the issue:

https://github.com/zoontek/react-native-permissions/assets/1902323/11a115f4-41b1-4f85-889b-b370d79cc7f6

Are you sure you didn't forget step 3 of iOS setup?

  1. Then execute pod install in your ios directory (📌 Note that it must be re-executed each time you update this config).
ajen010 commented 6 months ago

The issue is the simulators don't respond when you do a request. When the code runs on a real mobile device everything works perfectly.

zoontek commented 6 months ago

@ajen010 My screen recording is on a simulator.

KonarkRajMisra commented 6 months ago

if you were using an older version of react-native-permissions, you might have reactNativePermissionsIOS in your package.json, can you try removing it, doing pod install again?

zoontek commented 5 months ago

@ajen010 Did you tried again? With the example app / after cleaning your project?

ajen010 commented 5 months ago

It works on the devices every time, just not on the simulator. I've moved on and am working on other projects now. Thanks for your help.

On Mon, 10 June 2024, 10:41 pm Mathieu Acthernoene, < @.***> wrote:

@ajen010 https://github.com/ajen010 Did you tried again? With the example app / after cleaning your project?

— Reply to this email directly, view it on GitHub https://github.com/zoontek/react-native-permissions/issues/873#issuecomment-2158240285, or unsubscribe https://github.com/notifications/unsubscribe-auth/AACOLNLGPNYZNJ2MVZDHMK3ZGWNGFAVCNFSM6AAAAABG76LOCKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNJYGI2DAMRYGU . You are receiving this because you were mentioned.Message ID: @.***>

zoontek commented 5 months ago

@ajen010 Weird, as I (and others) never had an issue with simulators, I even posted a video of it working for your app.

OK, I'm closing this.

ObidosDev commented 3 months ago

So I had the same issue right now with RN 0.73.6 & "react-native-permissions": "^4.1.5"

FIX: