![]() |
|
||||||||||
|
|
|
|||||
|
Регистрация: Apr 2009
Сообщений: 409
|
Привет, форум. Возникла следующая, слабо поддающаяся логическому объяснению, проблема:
передаю в main переменные var main:Mains=new Mains(stage.loaderInfo.parameters as Object); там их отправляю в конструктор VK.api .внутри самой main, есть несколько вызовов VK.api и передача flashvars, как параметра другим классам. Те вызовы что внутри Main(getVariable например) работают нормально, а те что внутри других классов нет, при этом ошибки функцией onError не отлавливаются, и flashVars внутри них трейсится правильно. Удалось решить проблему, если отправлять не все параметры из варса. Ну заработало и хорошо, на время забил.. Но теперь возникла необходимость обращаться к JS функциям контакта, а для этого нужен полный flashVars с параметром lc_name . попробовал добавить как раньше flashVars['lc_name'] = flashVar['lc_name']; Но с ним не работает ни один другой метод. Единственный вариант щас, это делать два VK, один с полными параметрами, другой с пятью. Один для методов java, другой для конактовских, но это уже дикое извращение, хочется разобраться с вариантов без костылей. |
|
|||||
|
эмм... судя по коду вообще не понятно, почему flashvarsы вызываются из других классов... должно же быть так
public static var flashVars:Object; public function Mains(flashVar:Object) { flashVars=flashVar; или я что-то недопонял?
__________________
while(live()) { hope(); } |
|
|||||
|
Регистрация: Apr 2009
Сообщений: 409
|
Я передаю их как параметр в конструктор классов.
|
|
|||||
|
Регистрация: Apr 2009
Сообщений: 409
|
Вот, вынес в отдельный пример для понятности.
Если отправить только 4 переменные, то метод срабатывает и внутри Main и внутри TestClass Если же, отправлять все переменные, то сработает только внутри одного класса. чудеса |
|
|||||
|
вообще я бы в кадре лучше ничего не писал) ни к чему это
может быть проблема в том, что у ВК могут быть не лады со stage? можно попробовать если это не поможет, то я бы попробовал не писать в первом кадре ничего, а создать документкласс проекта mainClass и в нем тогда если и это не сработает, можно вызывать из любых других классов объект flashVars путем mainClass.flashVars
__________________
while(live()) { hope(); } |
|
|||||
|
Регистрация: Apr 2009
Сообщений: 409
|
всё равно не работает(
|
|
|||||
|
у меня была похожая ошибка на одной платформе. Флэш почему-то видел флэшварсы только в первом классе, а когда я загружал в первую флешку вторую, начинались глюки... он не видел некоторых варов. Это странно, скорее всего это связано с тем, что при загрузке флешек друг в друга их код перемешивается и классы становятся общими.
В итоге я эту проблему не решил, а обошел, создав в окружении js функцию, возвращающую при запросе флешу флэшварсы. Создал класс, обрабатывающий ExternalInterface и в итоге в любом месте кода мог обратиться к функции этого класса, которая возвращала флешварсы, просто заново их получая каждый раз от js
__________________
while(live()) { hope(); } |
|
|||||
|
Регистрация: Apr 2009
Сообщений: 409
|
ну в главной флешке все параметры видит, сомневаюсь что теряются параметры при передаче другим классам, слишком уж серьёзный глюк. тем более внутри классов трейс выдаёт правильные варсы. вся проблема начинается если передавать с варсами flashVars['lc_name'] , но при этом сам вк.апи на это никак не ругается.
|
|
|||||
|
Регистрация: May 2010
Сообщений: 543
|
Цитата:
__________________
Вы грабите бедных людей. Парень со свирелью накажет вас. Хонгильдон (с) |
![]() |
![]() |
Часовой пояс GMT +4, время: 18:54. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|