PurpleI2P / i2pd-android

i2pd for Android
BSD 3-Clause "New" or "Revised" License
196 stars 23 forks source link

Failing on GrapheneOS, Pixel 7 (v8a) #61

Closed DiagonalArg closed 11 months ago

DiagonalArg commented 11 months ago

I've installed 2.49.0 from github into my GrapheneOS pixel 7. (So I'm using v8a.)

The initial screen says,

SD card write access is required to write the keys and other files to the I2PD folder on SD card. [OK]

I hit [OK] and I get the request from GOS:

Allow i2pd access to manage all files?

That's where I have the choice to Allow, don't allow, or set up storage scopes. I set up storage scopes, giving it the folder /Downloads/I2PD.

It then tells me about battery optimization and asks to run in background. I accept that. I'm greeted with a page that says:

Invisible Internet Protocol:  
Network without borders
Start failed: boost::filesystem::directory_iterator::operator++: Operation not permitted [system:1]: "/storage/emulated/0/i2pd/tags"

Poking around, I see I2PD has its files in the /i2pd directory, but hasn't put anything in /Download/I2PD (or /i2pd/tags).

I tried the whole thing over giving storage scopes the /i2pd/tags directory, but then the app just crashes on startup.

Any thoughts on how I might proceed?

r4sas commented 11 months ago

That's where I have the choice to Allow, don't allow, or set up storage scopes. I set up storage scopes, giving it the folder /Downloads/I2PD.

App doesn't support scopes, only "managing all files". That's why it is not works on your set-up.

DiagonalArg commented 11 months ago

@r4sas / Sorry to post on a closed issue, but directly regarding this...

One of the GOS dev's is saying:

"I'm not sure why they used the MANAGE_EXTERNAL_STORAGE permission yet, instead of SAF (Storage Access Framework), which should not be used unless the app can't effectively make use of the more privacy-friendly APIs (SAF or the Media Store)."

Might it be possible to use the alternative?

r4sas commented 11 months ago

@DiagonalArg if anybody write code for SAF support. No one have time atm to work on app.