Предотвращение переполнения кэша мобильного Safari - PullRequest
1 голос
/ 06 февраля 2011

У меня есть простое маленькое веб-приложение, которое объединяет несколько просмотров с некоторых камер с поддержкой Ethernet по всему дому.В основном это небольшая панель инструментов, так что я могу легко сказать, что происходит вокруг дома.Я часто обновляю изображения, добавляя новый Date (). GetTime () к базовому URI.

Все работает счастливыми днями, за исключением одной маленькой проблемы.Если я ненадолго оставлю приборную панель на своем iPad, она исчерпает память и вылетает обратно на домашний экран.Я знаю, что это потому, что Mobile Safari кэширует каждое из этих изображений в оперативной памяти, и в конечном итоге их оказывается слишком много.

Поскольку эти изображения размещаются на встроенных устройствах;У меня действительно нет возможности напрямую изменять заголовки кэширования.Я также хотел бы избежать создания оболочки на моем сервере.

Мой вопрос ;Кто-нибудь может придумать, как Mobile Safari так агрессивно кэширует эти изображения, что он вылетает?

1 Ответ

1 голос
/ 07 февраля 2011

Вы можете попытаться повторно использовать теги img и / или установить атрибут src в пустую строку перед удалением изображения.Вероятно, это не агрессивный кэш, который разрушает мобильное сафари, а то, что браузер плохо справляется с выпуском ссылок на изображения, когда теги изображений удаляются.

Вы можете найти более полезную информацию здесь: http://www.vargatron.com/2010/08/ipad-html5-js-memory-management/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...