Writing to external SD card in Android 5.0 and above

So in short this is an issue because we’re still stuck with FAT? I really wish the world would progress sometimes…

Anyways, I was able to create a folder under /storage/sdcard1/Android/data/com.nutomic.syncthingandroid/files that Syncthing accepts and syncs with. As long as that works I’m fine with it.

Thanks for a great app!

1 Like

Have you tried editing the exported “backup” config to point the directory to proper external card? I think that I used that once to get ST to access to external folder.

Edit the backup confing and import it back.

Does this mean I can sync any folder on the SD card on a rooted phone, when running Syncthing as root?

That works, but there are some bugs with root (check the bug tracker).

Thanks for your reply! Do you mean this one? https://github.com/syncthing/syncthing/issues/3258 I couldn’t really find much else…

These issues

Should’ve found that. Sorry, thanks!

I’ve installed Syncthing on Linux(Arch,v0.13.10, Linux (64 bit)) and Syncthing app on android (6.0.1). Now, I’ve lots of “Out of Sync” files due to permission error. The folder is on SDCard. Is this related to this problem? my device is not root.

p.s. the default app UI doesn’t work and I had to use WebGUI! (another problem)

SD card is not supported. Check the issue tracker.

Ugh. This is a bummer. I just wanted to setup SD card sync for my girlfriend and discovered that it doesnt work because of this… On my older android Syncthing can happily synchronize whole SD card to our NAS but here newer android only says “error” in the folder item… This is really sad.

2 Likes

Yeah :frowning: i think the Golang Github Issue for this needs more attention… as you see there are ignoring us

On Android 6.0, you should be able to use the “merged storage” setting to have everything treated as internal storage. Not sure what the option is called exactly.

1 Like

Unfortunately, this feature is often disabled by the manufacturers in their firmwares. At least Sony, Samsung, and LG do not support it for (some of?) their phones. Also this is only an option if your SD card is fast enough, because otherwise it will slow down your phone since apps will also get installed on the SD card.

I’m using that feature and all my apps are still getting installed on the internal storage, not the sd card.

1 Like

Good to know, thanks. I never had the chance to test it, just read that they get installed to the storage with the most free space available by default.

Anyway, as long as the manufactures officially don’t support “adoptable storage”, getting support for the storage framework into Go seems to be the only option that will work everywhere.

I got a android 5.1 device, and i thought they fix the write to ext sd, but when I set it up, some of the folders cannot be sync, ie. /mnt/extsdcard/Download. but some other ones were able.

There is no root option for my devices, so I can’t get it to work.

Google added a possibility for Apps to access the ext SD via a new API. But GO (Google’s programming language) doesn’t support that new API (yet).

If you only want to sync from your phone to antoher device, than adding the folder and manually creating an empty file .stfolderinside that folder (with an App that supports the new API) should enable Syncthing to sync that folder.

Thanks, I was able to add that to the syncthing, but everything in the folder has a “permission denied” status and so far nothing gets synced

Update: I was able to copy the files from the other devices along with the .stfolder. syncthing can scan the files, but I am getting permission denied on all the files I need to sync.

Please re-read wweich’s reply. You can only synchronize files from your phone using this solution, not to it (aka Master folder).

Shamelessly quoting myself:

Is the adoptable storage only available in Marshmallow?

I understand the third one, I can only use it as a master folder, it can upload, but can’t download from syncthing.

Could you explain what is the second one? Do I have to put the folder that I want to sync in inside the app "…in my ext sd?