Lost Data from iOS (related to sharing extension)

Steps to reproduce

Starting from scratch, what are the steps to make the bug happen? The fewer the steps, the better.

Save link to iOS app from Safari using Sharing extension

Expected result

What do you expect to see after carrying out the steps above?

Link should be synced to web

Actual result

Instead of the expected result, what happened?

Links were not synced. Later I tried to force a refresh and all my saved links (about 5 of them, saved over the past week or so) were deleted, overwriting the file with the version on the web.

Environment

Which operating system are you using? iOS 13.3
Which browser are you using? Safari Mobile
If you’re using a desktop or mobile app, what’s the version number of Dynalist? I don’t see this information in the iOS settings or help screen, but I’m up to date with the latest version.
Are you using any third-party scripts for Dynalist, e.g. PowerPack? no.


Additional information

I did some edits in the inbox on the web as well before I noticed the saved links were missing.


Additional comments

none.

May I ask, how long did you keep the app open after performing the share operation?

We’ve gotten multiple reports over the last few months but somehow I am still unable to reproduce this exact problem on our iOS device. If you have a way to reproduce the issue consistently, it would be really helpful if you can record a video of the exact steps so we can try to follow w.r.t. timing, etc.

Its possible those edits get synced to the server as later than the added links, and thus overwrites them. To avoid this it is absolutely necessary to be sure your edits are in a distinct part of your outline from where the links are sent. OR, be diligent about syncing.

The share extension now launches the app when creating the links. I usually switch back to whatever I’m doing. But I’ve opened and worked on other documents in Dynalist for hours afterwords. It seems strange that the inbox wouldn’t sync while I’m doing that.

I’m curious why the extension works this way. When I use the API via Drafts or the Dynalist Bookmarker Chrome extension I don’t seem to have these problems. Moreover, I don’t even have to launch Dynalist. (And as an added bonus I can even save things to other documents besides the inbox.) Why are these 3rd party solutions so much more robust than the Dyanlist share extension?

The Share extension is native iOS code that pushes the text to the (cordova) app, which inserts it as if you’re editing it using the app. I still haven’t been able to find out why items inserted using this method doesn’t sync whereas items inserted traditionally by typing syncs.

3rd party methods rely on the API which pushes the text directly to the server, then the apps would pull that change from remote.

1 Like

This extension aside, Sync doesn’t happen on an iPhone when DynaList isn’t loaded and active. In particular, if I’m working disconnected, then leaving the app then later connecting; such is not a valid multi-device process with DynaList. You can do the above, but you must go back into the app to give it time to sync. (Also, sync doesn’t happen every millisecond; there’s always a notable delay.)

My guess is this extension doesn’t keep dynalist open for long enough to allow the sync process to complete.

This doesn’t explain it, because the app is open otherwise and should have time to sync later on.

Oh, you are actively working in DynaList? Okay then.