Comments (9)
AFAIK, a normal app can only write to SD card through the Android ContentProvider API, which is not compatible with DroidFS. Android 11 introduced the MANAGE_EXTERNAL_STORAGE permission which seems to solve the problem. However it's not available for versions below Android 11.
from droidfs.
Couldn't you use the storage access framework to act as a location to external storage to keep your encrypted volume.
from droidfs.
No, unless you find a way to use SAF with paths, without API calls.
from droidfs.
I was wondering you could do it like keepass DX. They used SAF and allowed users to create databases on SD card. Also read and write was possible. Maybe ask the devs there.
from droidfs.
I mean this is not like partitioning your drive as it is creating encrypted files for the new volume you created. So I thought since both use the same methodology, then it was possible.
from droidfs.
KeepassDX and other apps use SAF from the JVM, via API calls. DroidFS needs to access file system from native code but native code can only use SAF through file descriptors. Gocryptfs uses paths. It's not compatible.
See #6 for more details.
from droidfs.
Any app with WRITE_EXTERNAL_STORAGE
permission can write to /{path to SD card}/Android/data/{app package name}/
. Not sure about OTG, though.
Workaround (tested on Android 10):
- Create directory
/storage/1234-5678/Android/data/sushi.hardcore.droidfs/files
, replace numbers with UUID. - Specify this directory or any subdirectory as volume path.
- File picker button inside volume creation and password change activities would not work, so you'll have to type in path manually or through clipboard.
An additional check in function isTreeUriOnPrimaryStorage should be implemented, I guess?
from droidfs.
You're right, but DroidFS can't access arbitrary files on SD card like /{path to SD card}/MyEncryptedVolume
. This is why I disabled SD card usage. Maybe I could still allow Android/data/sushi.hardcore.droidfs/files
.
from droidfs.
e96d472: I allowed to create volumes under Android/data/sushi.hardcore.droidfs
on SD cards. The feature will be available in the next release.
from droidfs.
Related Issues (20)
- [Feature Request] Language Selection Menu HOT 2
- Crash on "Copy to shared storage" HOT 4
- Unsafe Features Documentation Webpage Down HOT 1
- [Bug] the app allows creating a container without a password HOT 2
- [Feature Request] Folding support in built-in text viewer/editor HOT 1
- Embedded ExoPlayer can't successfully play videos with AV1 codec HOT 5
- Feature Request: Integrate with default File explorer HOT 1
- Fix Compatability with Graphene OS HOT 1
- Use image/video metadata date when viewing/sorting media HOT 4
- Rotating image causes metadata to be cleared HOT 10
- Keep Thumbnail Cache HOT 27
- GIF HOT 2
- Set limit enter password times ( for hackers) HOT 3
- File is too large to load in memory HOT 1
- issue with finding the created volume HOT 1
- Add support for Rclone HOT 1
- [Feature Request] Text viewer support for ANSI / Win 1252 encoding HOT 1
- Audio/Video player behavior enhancement HOT 9
- How to retrieve files stored in encrypted volumes HOT 2
- Suggestion: Ask for storage permission after updating HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from droidfs.