Очистка (или предотвращение) создания объектов JavaScriptCore в UIWebView?

У меня есть UIWebView это использует слишком много памяти. Рассматриваемое поведение включает в себя страницу HTML/JavaScript, где вы можете перекрашивать определенные области, нажимая на них, создавая новые цветовые слои на основе файлов PNG, но каждый раз, когда пользователь касается поля (независимо от того, добавляют ли они цвет или перекрашивают). существующая область) память тикает. Каждое прикосновение съедает память, и оно никогда не падает. Этот процесс продолжается до бесконечности, что в лучшем случае приводит к потере памяти и в худшем случае к падению приложения.

После игры с Activity Monitor и Instruments, я сузил его до накопления объектов в VM: Webkit malloc категория, из JavaScriptCore library, Это имеет смысл: функциональность страницы - JavaScript, а каждый слой PNG - около 4 КБ, того же размера, что и объекты, которые создаются.

Так что теперь мой вопрос становится, что мне с этим делать?

Я новичок в UIWebView, так что мне было интересно, если кто-то может пролить свет на мои варианты? Есть ли способ вручную убрать все эти ненужные объекты (я пробовал [[NSURLCache sharedURLcache] removeAllCachedResponses] но это ничего не дало) или мешало им формироваться в первую очередь?

И, возможно, самое главное: может ли это оказаться решением для iOS в приложении или решением для JavaScript на странице?

0 ответов

Другие вопросы по тегам