Как кешировать изображение с помощью as3? - PullRequest
1 голос
/ 24 ноября 2010

Это мой первый пост в StackOverFlow, и я сообщаю вам о проблеме, которая ненавидит мою команду разработчиков.

Мы находимся в проекте, используя отдельный FlashPlayer в качестве средства отображения новостей.Лента новостей представляет собой динамический XML, возвращаемый из запроса ASP.Net и работающий в Windows XP.

Проблема заключается в следующем: - Дисплей работает на экране шины, и иногда происходит сбой подключения к Интернету, но нам все еще нужнопродолжать отображать изображения из уже загруженных новостей.Когда мы вручную помещаем строку в URLRequest, она работает.Изображение загружается с сервера, кэшируется IE8 и перезагружается из кэша, если Интернет пропал.Но когда мы динамически извлекаем URL-адрес изображения из XML и помещаем внутрь метода URLRequest, повторная загрузка из кэша не работает.

Например.1 - Статическая строка работает

var pictureUrl:String = "http://www.server-domain/image.jpg"
public var loader:Loader;
loader.load(pictureUrl);

РЕЗУЛЬТАТ: загрузка изображения, отображение, сохранение в кеше, повторная загрузка из кеша при сбое подключения к Интернету.

например.2 - Динамическая строка НЕ ​​работает

var pictureXmlList:XMLList = xml.item.image as XMLList;
var pictureUrl:String = pictureXmlList[0] as String;
public var loader:Loader;
loader.load(pictureUrl);

РЕЗУЛЬТАТ: загрузить изображение, отобразить, сохранить в кеше, НЕ перезагружать из кеша при сбое подключения к Интернету.

IOError: [IOErrorEventType="ioError" bubbles=false cancelable=false eventPhase=2 text="Error #2036"]

1 Ответ

0 голосов
/ 24 ноября 2010

Одна вещь, которую вы можете попробовать, - это использовать кэш Flash (называемый «Локальные общие объекты») вместо того, чтобы полагаться на кеш браузера -

http://www.bestflashanimationsite.com/tutorials/4/

Вы можете найти там несколько советов. Таким образом, для получения URL-адреса не нужно извлекать XML-файл - он останется в памяти.

Я не уверен, поможет ли это вам или нет, но это должно по крайней мере расширить ваши возможности! :)

...