zhanghai / zhanghai/MaterialFiles

Alternative method of accessing data and obb

Open
#899 11 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Kotlin
Stars
9k
Forks
736
PR merge metrics
No merged PRs in 30d

Description

So I use material files and unable to access Android/data and Android/obb. But today another redditor told me he was able to get it to work with Mixplorer. I kinda figured out how it did this. Here is the recording:

https://user-images.githubusercontent.com/64138578/211184012-80819449-ad81-4890-a3e1-87eca17c2833.mp4

You can see that I can have access to individual dirs in Android/data and Android/obb, but not Android/data and Android/obb,

The problem is that Android blocks RW access to Android/data and Android/obb, but not RW access to Android/data/* and Android/obb/*. So material files can access Android/data/app.revanced.manager.flutter, for example, but not Android/data.

So we just need to ask SAF to give access to Android/data/<package_name> and Android/obb/<package_name>. But how can we get the package names? You can see that Mixplorer asks for the permission for listing the installed apps, thats how it gets the name of installed packages. You can also see I allowed it to query installed packages twice, possibily for Android/data and Android/obb respectively.

I hope Material files can also implement this.

Mixplorer
Download Mixplorer

In the meantime, you could use material files to add another storage to Android/data and Android/obb by asking Mixplorer to grant the permission via SAF.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No repository files or tests are named. Start by tracing the existing SAF permission flow and the installed-app/package-query behavior described in the issue. Done means Material Files can request access to package-specific Android/data and Android/obb directories.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, kotlin
Domain
mobile
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.