Giter Site home page Giter Site logo

Comments (7)

alpha0010 avatar alpha0010 commented on June 8, 2024

How did you initially save the file? Did you download it with this library?

from react-native-file-access.

Nabeel20 avatar Nabeel20 commented on June 8, 2024

Not an expert but did you try adding android:requestLegacyExternalStorage="true" in AndroidManifest.xml in <application> and ask for user permission ?

from react-native-file-access.

thuynt99 avatar thuynt99 commented on June 8, 2024

From Google Play inbox:

We've detected that your app contains the requestLegacyExternalStorage flag in the manifest file of 1 or more of your app bundles or APKs.

Developers with apps on devices running Android 11+ must use Scoped Storage to give users better access control over their device storage. To release your app on Android 11 or newer after May 5th, you must either:

Update your app to use more privacy friendly best practices, such as the Storage Access Framework or Media Store API
Update your app to declare the All files access (MANAGE_EXTERNAL_STORAGE) permission in the manifest file, and complete the All files access permission declaration in Play Console from May 5th
Remove the All files access permission from your app entirely
For apps targeting Android 11, the requestLegacyExternalStorage flag will be ignored. You must use the All files access permission to retain broad access.

Apps requesting access to the All files access permission without a permitted use will be removed from Google Play, and you won't be able to publish updates.

I got this message show i need remove android:requestLegacyExternalStorage="true" in AndroidManifest.xml. So when i readFile image from sd i got error.

from react-native-file-access.

alpha0010 avatar alpha0010 commented on June 8, 2024

As you mention, direct/full filesystem access is being locked down on Android. This means that to access an SD card, the app must either be a file manager app (and so have MANAGE_EXTERNAL_STORAGE permission), or use SAF/Media Store. requestLegacyExternalStorage is there to temporarily enable apps to migrate storage techniques.

All of the Dirs constants in this library, except Dirs.SDCardDir, do not require any special permissions to use. However, they are restricted to only be accessible by this app. This library supports reading storage access framework provided files (on all api calls, if a file is being read from, it can be a SAF link), and writing via Media Store API (see cpExternal()).

If this does not meet your needs, could you further describe your use case?

from react-native-file-access.

alpha0010 avatar alpha0010 commented on June 8, 2024

Assuming resolved.

from react-native-file-access.

MaxJadav avatar MaxJadav commented on June 8, 2024

@alpha0010
Could you share any example how to use SAF/Media Store?
I will try to Implement download mp3 file. That file can not access by other source.

from react-native-file-access.

alpha0010 avatar alpha0010 commented on June 8, 2024

@MaxJadav Could you open a new issue regarding expanding the documentation? It will make it easier for me to track.

from react-native-file-access.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.