Home / GitHub Page

IOS - synchronisation: absolute path in file system

Hi

I am using joplin v10.0.40, database v25 on my iphone and ipad (both on the latest version 13.3)

In the app settings, I can select file system, as synchronisation target. However, for directory, I need to enter the absolute path.

The directory structure I find infiles, isn’t correct, as it doesn’t download the data i entered on my macbook.

When consulting Duckduckgo, I only get results of how apps are being programmed to save in folders.

Can someone answer this question, or point me in the right direction?

Wkr

On iOS, filesystem sync is not supported. For some reason it still shows up as a sync target on iOS.

thanks for the answer!

@tessus, I was just about to suggest removing this from iOS and giving the option to set cloud syncing app instead. Do you know if there are plans to set what cloud syncing app is used so that if one uses the filesystem sync on a desktop, they can still sync with an unsupported client on their mobile phone?

I don’t understand this question. Unless you mean that one can set e.g. Syncthing as a target. But in that case I don’t get it either, because you have to set a target dir, which you can’t on iOS. So I highly doubt that this will be implemented. Also, specifying external sync clients is too fragile. This is not maintainable.

I’m sorry for not asking an understandable question. I don’t know exactly how syncing works from a technical standpoint, so bear with me.

My question is: since the desktop version can use a directory for syncing to an unsupported target (tested with pCloud), how hard would it be to let the mobile phone user use their default syncing service that they have setup on their phone without having to set the directory on their device?

Ah I see. I doubt that this is doable on mobile. The sync code is very specific. We can’t just use anything. Unfortunately there’s no standardized sync API, otherwise this would be a great idea.

1 Like

Thanks for getting back to me. I was looking at the sync code on my bus ride home from work and it looks fairly simple to add new services as long as they have an API that will work with its code. How are id’s determined for each of the sync services? Everything else looks pretty straight forward.

The ids and sync target names are set in the class itself, so you have to pick one that isn’t used. Maybe Laurent has a list somewhere.

Thanks again. I haven’t found it in the documentation on Github yet but would definitely be a nice addition to the Contributing section.

This is rather very specific and before a new sync target is added, it should be discussed with Laurent first. Let’s say someone adds a new sync target, Laurent will then have to maintain it from the point forward. So this is quite a change…

Oh definitely. I saw that in the contribution guide to ask first and whatnot. I’m not good enough at Javascript and React yet to be able to make any changes like that but am looking at some bug reports since the guide does recommend contributing on those.

Yep, good plan. Fixing issues always helps. :wink: And it is a good way to learn the code, because during implementation you can try different things. Find the most elegant solution and create a PR… If it were that easy. :wink: