Closed dlangerenken closed 8 years ago
habs implementiert ;)
I sugggest we should think about a stateless synchronisation protocol.
Yes, true. We currently have a more or less "useful" sync protocol. In short: Check how old data is. If data is empty, do a full refresh. If data is older than X, do a refresh from everything newer than X.
However, there are a few things that havent been covered: Changes are not directly reflected within the app (can be synced through force refresh by user).
What we could do is give the user the option to choose when syncing should happen (xamarin has the option to set sync to wifi only). Maybe options like: Every time I open the app, every x hours, everytime in wifi, but only every x hours with cell data..
How about the server sends client requests a list of all page IDs with hashes or timestamps. If an ID does not show up anymore, the page can be deleted. And if a timestamp / hash does not match, the page has to be refreshed.
We already have this functionality to give us all updated/added/removed pages since a certain point in time.
On Sat, Feb 20, 2016, 13:18 sven15 notifications@github.com wrote:
How about the server sends a list of all page IDs with hashes or timestamps. If an ID does not show up anymore, the page can be deleted. And if a timestamp / hash does not match, the page has to be refreshed.
— Reply to this email directly or view it on GitHub https://github.com/Integreat/app-android/issues/166#issuecomment-186683065 .
Why then do we have to store all deleted pages? My point is: our current sync process is not stateless. It depends on the the pages the client already has downloaded and the deleted pages the server has to store.
I think, things like new images are the problem, not pages, right?
Well the button does fix this problem as well (as long as you dont have the same image url)
On Sat, Feb 20, 2016 at 11:43 PM Martin Schrimpf notifications@github.com wrote:
I think, things like new images are the problem, not pages, right?
— Reply to this email directly or view it on GitHub https://github.com/Integreat/app-android/issues/166#issuecomment-186766640 .
Does it make sense to have a "Remove all data" - Button? This would replace the "reinstall the app or empty your cache" workflow and would bring the users back to the Start Menu. This way we might avoid complications regarding the update (but of course this is just a workaround and not actually targeting the sync problem),