Я пытаюсь поделиться данными между as3 swf и as2 swf, которые он загрузил. Проблема в том, что я не могу заставить мой as2 swf читать локальный объект, написанный as3 swf. Он просто возвращает undefined, когда я пытаюсь получить ссылку на общий объект.
// AS3
_SharedObj.objectEncoding = ObjectEncoding.AMF0;
_SharedObj.data.blah = 'str';
_SharedObj.flush(500);
// ... some code to handle the flush status. I verified that the values were flushed.
// AS2
var so = SharedObject.getLocal('somestr', '/');
trace(so); // undefined!
Я здесь в растерянности. Я могу прочитать общий объект AS2 из AS3, но не могу сделать это по-другому. Я подтвердил, что оба ссылаются на один и тот же путь '/' (в частности, localhost, я даже проверил физический файл в файловой системе - он находится в каталоге #localhost каталога #SharedObjects на моем Mac). ObjectEncoding настроен на использование Формат AS2 AMF.
В документации конкретно говорится, что нужно установить эту кодировку, чтобы разрешить as2 получить доступ к одному и тому же общему объекту, поэтому я предполагаю, что это означает, что это возможно.
У кого-нибудь есть идеи?
LocalConnection
для связи между as3 и (загруженными или другими) as2 swfs. - person Amarghosh   schedule 14.10.2009