Обновление данных общего объекта без повторного открытия - PullRequest
0 голосов
/ 07 февраля 2012

У меня есть 2 SWF, которые будут загружены на веб-сайте. Предполагается, что генерируется байт-массив и передается другому swf.

Проблема в том, что когда я сохраняю байтовый массив в SharedObject в локальном файле пользователя, второй SWF-файл не получает обновленное значение переменной из первого SWF-файла.

Я установил второй SWF для получения значения каждую секунду, и он не будет обновляться, пока я не перезагружу страницу.

Я сбросил и закрыл соединение, чтобы убедиться, что данные сохранены по локальному пути, и это тоже не помогает.

Я также рассматривал возможность использования LocalConnection, но в flash-плеере для mac есть ошибка, из-за которой он не работал между swfs на mac. У меня не было выбора, кроме как использовать SharedObject для моего проекта.

У вас, ребята, есть какое-нибудь решение для этого?

Большое спасибо ..

Ответы [ 2 ]

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

Я не думаю, что этот подход будет работать (локальный SharedObject, вероятно, не разработан с учетом этого, и точное поведение может отличаться в зависимости от версии браузера и флеш-плеера).

Я бы попробовал вместо этого использовать LocalConnection.http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/LocalConnection.html

РЕДАКТИРОВАТЬ: Извините, я пропустил это: «Я также подумал об использовании LocalConnection, но есть ошибка во флеш-плеере для Mac, из-за которой он не работал между SWF-файлами на Mac. У меня не было выбора, кроме какиспользовать SharedObject для моего проекта. "

Я все время использую локальное соединение на Mac, поэтому я не уверен, что вы имеете в виду.Я настоятельно рекомендую использовать случайное число, которое генерируется один раз для каждого просмотра страницы, и отправить его во флэш-память (чтобы использовать как часть имени подключения), чтобы не открывать несколько подключений с одинаковым именем (еслипользователь открывает ваш сайт несколько раз в разных вкладках, например).

0 голосов
/ 07 февраля 2012

Я использую этот способ связи без проблем, и он работает нормальноВы вызываете flush после изменения значения?

...