2015-07-20 3 views
-1

Я разрабатываю приложение iOS, используя Simperium. Когда я вхожу в систему simperium, тогда он работает правильно, это значит, что он синхронизирует данные правильно. И после входа в систему пользователя он останется в системе, пока он не выйдет из системы. Так что, если приложение заходит в фоновый режим, он будет оставаться в системе. Ну, проблема в том, что когда приложение идет в фоновом режиме или если оно неактивно в течение некоторого времени, например, в течение 3-4 часов, и когда приложение выходит на передний план, тогда данные simperium не синхронизируются должным образом, за каждый ожидаемый, и если я выйду из системы и войду снова, тогда данные будут синхронизированы должным образом. Так как я думаю, что из-за чего-то сеанса вроде проблемы означает, что у Simperium есть фиксированное время сеанса, после которого оно истекло, это так?Simperium не синхронизирует данные

ответ

1

Simperium полагается на соединение WebSocket для обмена изменениями в обратном направлении.

Пока пользователь действительно вошел в систему, и токен аутентификации по-прежнему действителен, ожидается, что библиотека будет автоматически обрабатывать пересоединения/таймауты и включает в себя коммутаторы FG/BG.

Несколько вопросов к вам:

  • Какой метод аутентификации вы используете? Token based или UI?
  • Вы подключили «backgroundFetchWithCompletion»?
  • Если вы убьете приложение и перезапустите, синхронизация останется застрявшей?
  • Какую версию iOS вы используете? воспроизводили ли вы устройство или симулятор?
  • Можете ли вы подтвердить, используете ли вы последнюю версию Simperium?

Пожалуйста, непременно можете открыть проблему в главном хранилище (https://github.com/Simperium/simperium-ios). Обязательно включите подробные журналы, мы будем рады взглянуть.

Спасибо!

Смежные вопросы