Проверьте, нужно ли обновлять локальные данные (веб-сервис)
У меня есть приложение для Android, и мне нужно улучшить производительность и запрашивать интернет. У меня также есть веб-сервис в.net.
Когда я вхожу в профиль человека, мне всегда нужно снова загружать профиль, но я хочу проверить, нужно ли мне загружать профиль (новые данные).
Я думаю, сделать столбец Дата и всякий раз, когда кто-то изменяет профиль, обновлять столбец Дата. В Android загрузите с localDB и проверьте, совпадает ли "дата обновления" local с удаленной базы данных (веб-сервис), и если нет, загрузите данные из api.
это правильный способ сделать? какой подход лучше? может быть, используя int для проверки "версии профиля"?
благодарю вас
1 ответ
Вы не можете знать на локальном устройстве, что происходит на веб-сервере, не связавшись с ним. Я бы кешировал профиль в кеше памяти Android или в базе данных и вызывал веб-сервис в фоновом режиме для проверки новых данных.
Я бы также кешировал профиль на сервере, на веб-сервисе, потому что он поможет производительности другим пользователям веб-сервиса, если он у вас есть (например, веб-приложение). Когда кто-то меняет профиль (в вашем методе POST или PUT не забудьте аннулировать кеш). Когда вы получаете новый профиль из базы данных обновления веб-службы или кэшировать его, то снова в Android.