Я пытаюсь обмениваться данными между as3 swf и as2 swf, которые он загружал. Проблема в том, что я не могу заставить мой as2 swf читать объект localshared, написанный as3 swf. Он просто возвращает неопределенное значение при попытке получить ссылку на общий объектЗапись локального SharedObject в AS3 swf и чтение его в загруженном AS2 swf
// 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 sharedobject из AS3, но я не могу сделать это по-другому. Я проверял, что оба ссылаются на один и тот же путь '/' (в частности, localhost, я даже проверил физический файл в файловой системе, - его в каталоге #localhost каталога #SharedObjects на моем mac). ObjectEncoding установлен для использования AS2 AMF.
Документы специально говорят, чтобы установить эту кодировку, чтобы позволить as2 обращаться к одному и тому же общему объекту, поэтому я предполагаю, что это возможно.
У кого-нибудь есть идеи?
Можете ли вы опубликовать ссылку на документы об этом? Кстати, если вы не можете заставить это работать, подумайте об использовании 'LocalConnection' для связи между as3 и (загружаемыми или другими) as2 swfs. – Amarghosh