Сообщество
Логин
Пароль
Забыли пароль?     Регистрация
От всей души
Мы старались, делали.
Можно поблагодарить разработчиков любой суммой.
Общение / Приложение для Windows Phone / Странная работа синхронизации

Странная работа синхронизации

Иван Гальянов
25 января 2016 14:57
Добрый день! Вчера приобрел платную подписку, обрадовался что наконец то нашел нормальный сервис (онлайн все мега супер), но... объясните как работает синхронизация с приложением на виндос фоне. Для чего в настройках две галочки синхронизация пр входе и при выходе? когда выходишь из приложения совершив какую нибудь транзакцию, в онлайне ничего не меняется. Единственный выход это подождать 5 минут (иначе не дает нажать на кнопку синхронизация в ручном режиме) и жать на кнопку синхронизация. тогда изменения и в онлайне происходят. Но это жутко не удобно, если мне придется каждый раз в ручную синхронизировать.
Admin
 
25 января 2016 15:08
Здравствуйте.
Есть такая проблема. Некоторые системы не дают приложению ничего делать после выхода (но оно всё равно пытается, т.к. не знает об этом).

Можно отключить синхронизацию при выходе, тогда будет срабатывать при входе и закачивать на сервер изменения со следующего раза.

Будем ещё думать как это победить.
Иван Гальянов
25 января 2016 15:20
Admin Пишет:
Здравствуйте. Есть такая проблема. Некоторые системы не дают приложению ничего делать после выхода (но оно всё равно пытается, т.к. не знает об этом). Можно отключить синхронизацию при выходе, тогда будет срабатывать при входе и закачивать на сервер изменения со следующего раза. Будем ещё думать как это победить.
Спасибо, уже разобрался что тупо не синхронит при выходе, убрал эту галочку и как вы и сказали все норм при следующем заходе. Но вообще странно. Как пример приложение OneNote от микрософт, идеально синхронится при входе и при выходе, вообще ни разу не пришлось какие то данные восстанавливать.
Ахмед
24 февраля 2016 01:32
WP на самом деле дает приложению время на завершение работы, порядка 10 секунд (https://msdn.microsoft.com/ru-ru/library/windows/apps/ff817008(v=vs.105).aspx). Можно ловить событие и делать все что надо. Меня тоже бесит, что приходится все время тыкать кнопку синхронизации вручную, очень неудобно.
Admin
 
24 февраля 2016 09:05
Ахмед Пишет:
WP на самом деле дает приложению время на завершение работы, порядка 10
На самом деле не даёт, а убивает по своему усмотрению, как вы сами видите.
Есть, конечно, вероятность не корректной реализации с нашей стороны, при возможности проштудируем код ещё раз.
Ахмед
24 февраля 2016 12:49
Admin Пишет:
На самом деле не даёт, а убивает по своему усмотрению, как вы сами видите.
Убивает уже потом. А сначала дает 10 сек на Deactivated event и столько же на Closing event, смотря как уходят из приложения. В коде можно "попросить" немного больше времени, если это очень нужно.
Admin
 
24 февраля 2016 16:44
Ахмед Пишет:
Убивает уже потом.
Потом - это когда?
Ахмед
24 февраля 2016 16:57
Потом - когда эти события отработают. Вот понятная диаграмма, как все происходит: http://rarcher.azurewebsites.net/Images/autoState00.png. Небольшое уточнение, полагаться можно только на Deactivated event и все делать в его обработчике.
Admin
 
24 февраля 2016 19:12
Ахмед Пишет:
Потом - когда эти события отработают.
Если бы так было, то синхронизация часто (почти всегда?) успевала бы завершаться успешно, но если вам "..приходится все время тыкать кнопку синхронизации вручную, очень неудобно", то наверное это не так?

Синхронизация, очевидно, стартует сразу в обработчике Application_Deactivated, если вы об этом.
Ахмед
24 февраля 2016 19:25
Выходит что да, не так. Но другие приложения ведь как-то синхронизируют данные. OneNote, Wunderlist, почта - все прекрасно работают. А мы с женой все время мучаемся, она на андроиде, а я на WP. Приходится друг другу писать: "ты синхронизировал? я да. - я вроде тоже. - почему ничего нет? - не знаю, щас снова нажму". И так каждый день.
Admin
 
24 февраля 2016 19:49
Ахмед Пишет:
Но другие приложения ведь как-то синхронизируют данные.
Возможно есть другой способ (либо какая-то ошибка в текущей реализации), о котором мы пока не знаем.
Чтобы отвечать на сообщения - зарегистрируйтесь и войдите в личный кабинет.