Использование API во вложенном SWF
Использование API во вложенном SWF
Ситуация такая: есть приложение swf в Вконтакте, в который загружается дополнительный SWF. Из дополнительного SWF вызывается метод API wall.post для размещения сообщения на стену пользователя, который установил основное приложение. Выдается ошибка invalid API ID. А при вызове метода прямо из второго SWF все получается. Как быть?
- ChineseBeemaster
- Сообщения: 64
- Зарегистрирован: 28 авг 2011, 04:02
Re: Использование API во вложенном SWF
у меня вызов так идет
первый SWF
в конструкторе второго
я использую контейнер, и во вроторой SWF передаю все flashVars и сам Wrapper для обращения к API
первый SWF
Код: Выделить всё
var _class_name: String = !_is_wall ? ('Application') : ('ApplicationWall'); var _app_domain: ApplicationDomain = _loader.contentLoaderInfo.applicationDomain; var _class: Class = _app_domain.getDefinition(_class_name) as Class; // Основное приложение application = new _class(_flash_vars, _wrapper);
Код: Выделить всё
public function Application(_vars: Object = null, _w: Object = null) : void { // Ссылка на себя application = this; // Контейнер _wrapper = _w; // Безопасность (загрузка с URL) Security.allowDomain("*"); // Параметры загрузки флешки _flash_vars = !_vars ? ( { } ) : (_vars); if (stage) { onAddedToStage(); } else { addEventListener(Event.ADDED_TO_STAGE, onAddedToStage); } }
Re: Использование API во вложенном SWF
а где подгрузка второго swf происходит?
- ChineseBeemaster
- Сообщения: 64
- Зарегистрирован: 28 авг 2011, 04:02
Re: Использование API во вложенном SWF
Код: Выделить всё
// Формируем адрес загружаемой SWF var _url: String = '_____URL______' var _url_request: URLRequest = new URLRequest(_url); var _context: LoaderContext = new LoaderContext(false, ApplicationDomain.currentDomain, SecurityDomain.currentDomain); if (new LocalConnection().domain == 'localhost') { _loader.load(_url_request); } else { _loader.load(_url_request, _context); } // Слушатели addListeners(_loader.contentLoaderInfo);
Код: Выделить всё
private function addListeners(_listener: IEventDispatcher) : void { _listener.addEventListener(Event.COMPLETE, completeHandler); _listener.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler); _listener.addEventListener(Event.INIT, initHandler); _listener.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); _listener.addEventListener(Event.OPEN, openHandler); _listener.addEventListener(ProgressEvent.PROGRESS, progressHandler); _listener.addEventListener(Event.UNLOAD, unLoadHandler); }
Re: Использование API во вложенном SWF
Спасибо, но, Блин-блинский, как все мудрено...
- ChineseBeemaster
- Сообщения: 64
- Зарегистрирован: 28 авг 2011, 04:02
Re: Использование API во вложенном SWF
а как ты хотел ))))