В мае 2010 года мы выпустили первый мобильный клиент справочно-правовой системы «Право.ru» для устройств на платформе iOS. На тот момент это было первое приложение, предоставляющее доступ к нормативным актам и иным официальным документам РФ. В декабре 2010 появилось приложение для iPad. Так и сегодня СПС «Право.ru» для iOS является лидером по количеству установок среди справочно-правовых систем. sofbix рассказал историю создания приложения, описал проблемы, с которыми столкнулся, и пути их решения.
Разработка
В процессе реализации СПС «Право.ru» для iOS мы столкнулись с некоторыми сложностями. Первая была в том, что СПС представлена большой базой документов, хранение которых на устройстве затруднительно. Может оказаться так, что на устройстве недостаточно места. При этом операционная система освобождает ресурсы приложений (в том числе и нашего) преимущественно за счет очистки кеша. Однако, документы, обновленные с веба, должны сохраняться в памяти мобильного устройства. И мы нашли оптимальное решение, при котором открытие таких документов происходит из закешированных данных, однако загруженные с веба документы будут гарантированно сохранены на устройстве без потерь при чистки кеша.
В чем же секрет? Как можно почистить кеш и при этом не потерять документы? Ответ в резервном копировании. Дело в том, что после каждого апдейта документов производится их автоматическое сохранение в zip файл (который «сжимает» текстовые данные до 10 раз). Zip сохраняется, и когда кеш будет очищен и понадобятся документы, хранимые локально, будет запущен механизм восстановления документов. Такая гибкая система позволяет оставлять данные на устройстве в сохранности, не захламля диск устройства.Читать полностью »