Проблема с контейнером
-
- Сообщения: 28
- Зарегистрирован: 28 июл 2010, 15:32
Проблема с контейнером
Сделал всё, как указано в http://vk.com/page11298031 - чтобы нужно было добавить приложение.
Нажимаю на "Без использования контейнера" - всё отлично работает.
А если на "С использование контейнера" - надпись "Пожалуйста, добавьте приложение на свою страницу" - не убирается и после обновления страницы!
Т.к. у меня приложение с чатом, мне нужно, чтобы был задействован контейнер, в результате чего, надпись не убирается. (Код моего чата http://flapps.ru/forum/topic663.html)
Помогите изменить код!
Нажимаю на "Без использования контейнера" - всё отлично работает.
А если на "С использование контейнера" - надпись "Пожалуйста, добавьте приложение на свою страницу" - не убирается и после обновления страницы!
Т.к. у меня приложение с чатом, мне нужно, чтобы был задействован контейнер, в результате чего, надпись не убирается. (Код моего чата http://flapps.ru/forum/topic663.html)
Помогите изменить код!
Re: Проблема с контейнером
Ну так это код на isAppUser без использования контейнера
С контейнером смотри здесь http://flapps.ru/forum/topic182.html
С контейнером смотри здесь http://flapps.ru/forum/topic182.html
-
- Сообщения: 28
- Зарегистрирован: 28 июл 2010, 15:32
Re: Проблема с контейнером
Сделал, теперь ошибку пишет =(
http://i.piccy.info/i5/18/39/383918/21.jpg
25 кадр принадлежит чату http://flapps.ru/forum/topic663.html
http://i.piccy.info/i5/18/39/383918/21.jpg
25 кадр принадлежит чату http://flapps.ru/forum/topic663.html
Re: Проблема с контейнером
Эту строку:
переделай так:
Код: Выделить всё
function onAddedToStage(e: Event):void {
переделай так:
Код: Выделить всё
function onAddedToStage2(e: Event):void {
-
- Сообщения: 28
- Зарегистрирован: 28 июл 2010, 15:32
Re: Проблема с контейнером
Проверь в 1 кадре синтаксическая ошибка где-то! Кинь код 1 кадра, я посмотрю.
-
- Сообщения: 28
- Зарегистрирован: 28 июл 2010, 15:32
Re: Проблема с контейнером
Евгений писал(а):Проверь в 1 кадре синтаксическая ошибка где-то! Кинь код 1 кадра, я посмотрю.
Никакой ошибки там нет. Всё на 1 кадре - чат (взят от сюда http://flapps.ru/forum/topic663.html)
Код: Выделить всё
import vk.*;//импотритуем все что нам надо //все это необходимое есть в архиве с исходником var api_id:Number =1605383;//ID приложения, которое мы получили вначалеvar api_secret:String = "IQyfnhjlTc";//Ключ приложения, которое мы получили вначалеvar viewer_id:Number;//id пользователя который просматривает приложениеvar url_loader1:URLLoader = new URLLoader();//лоадерыvar url_request1:URLRequest = new URLRequest();var url_loader2:URLLoader = new URLLoader();var url_request2:URLRequest = new URLRequest();var url_loader3:URLLoader = new URLLoader();var url_request3:URLRequest = new URLRequest();var api:VkApiNode;//создаем переменную класса, каждый вызов к Api буде создаваться ее экземплярvar query:String;// переменная пути запроса в URL, а данные будут передаваться методом GETvar timer:Timer = new Timer(2500);//таймер, по срабатыванию которого будем обновять поле сообщений 2.5, самое оптималное время, но меняйте как душе угодноvar save:XML=new XML();//XML который хранит сообщенияvar VkAvatar:Loader = new Loader();//Лоадер для аватараvar VkAvatarUrl:URLRequest = new URLRequest();//путь аватараvar wrapper:Object;//обьект <<контейнер>>, который загружает в себя приложение this.addEventListener( Event.ADDED_TO_STAGE, onAddedToStage );//событие произойдет, когда контейнер полностью загрузит приложение function onAddedToStage(e: Event):void { Security.allowDomain("*"); stage.dispatchEvent(new Event(Event.DEACTIVATE));//решение проблемы неработоспособности некоторых элементов stage.dispatchEvent(new Event(Event.ACTIVATE)); wrapper = Object(this.parent.parent);//определяем контейнер viewer_id = wrapper.application.parameters.viewer_id;//передаем переменной знчение id просматривающего приложение timer.start();//запускаем таймер stage.addEventListener(Event.ENTER_FRAME, Emess);//добавляем слушатели btn.addEventListener(MouseEvent.CLICK, onMessGo); timer.addEventListener(TimerEvent.TIMER, onGetMess); Mes_tf.addEventListener(KeyboardEvent.KEY_DOWN, onMessOtpr); api=new VkApiNode(viewer_id,api_id,api_secret);//загружаем профиль пользователя и самый маленький аватар(photo_medium и photo_big большее размеры), который просматривает приложение query=api.getProfiles([viewer_id], ['photo']); url_request3=new URLRequest(query); url_loader3=new URLLoader; url_loader3.addEventListener(Event.COMPLETE, EComplet2);//событие произойдет когда профиль загрузится url_loader3.load(url_request3);} function EComplet2(e:Event):void{ var XmlO:XML = new XML(url_loader3.data);//создаем переменную хранящую профиль VkAvatarUrl = new URLRequest(XmlO.children()[0].photo);//загружаем аватар VkAvatar.load(VkAvatarUrl); VkAvatar.contentLoaderInfo.addEventListener(Event.COMPLETE, onVkAvatar);//событие произойдет когда аватар загрузится}function onVkAvatar(e:Event):void{ VkAvatar.x = 2; VkAvatar.y = 2; addChild(VkAvatar);//добавляем на сцену аватар}function onMessOtpr(e:KeyboardEvent):void{ if(e.keyCode == 13)//если пользавеиель нажал клавишу Enter { if(Mes_tf.text !== "")//если пое для ввода сообщений не пустое { api=new VkApiNode(viewer_id,api_id,api_secret);//деаем запрос и ставим сообщение в очередь query=api.sendMessage(Mes_tf.text); url_request1=new URLRequest(query); url_loader1=new URLLoader; url_loader1.load(url_request1); Mes_tf.text = ""; } }} function Emess(e:Event):void{ if(Mes_tf.text == "")//если поле пустое на кнопку нажать нельзя { btn.enabled = false; }else{//если нет то можно btn.enabled = true; }}function onMessGo(e:MouseEvent):void{ api=new VkApiNode(viewer_id,api_id,api_secret);//деаем запрос и ставим сообщение в очередь query=api.sendMessage(Mes_tf.text); url_request1=new URLRequest(query); url_loader1=new URLLoader; url_loader1.load(url_request1); Mes_tf.text = "";}function onGetMess(e:TimerEvent):void{ api=new VkApiNode(viewer_id,api_id,api_secret);//загружаем очередь сообщений query=api.getMessages(); url_request2=new URLRequest(query); url_loader2=new URLLoader; url_loader2.addEventListener(Event.COMPLETE, EComplet); url_loader2.load(url_request2);}function EComplet(e:Event):void { if(XML(url_loader2.data).message_info !== null)//если в очереди хоть что-то есть { save = new XML(url_loader2.data);//передаем XML полученные данные for(var i:int=0; i<save.length(); i++)//запускаем цикл { if(save.children()[i].user_id == viewer_id)//если данное сообщение отправленно пользователем, который просматривает приложение { pole.htmlText += '<b><font color="#ff0000">' + save.children()[i].user_name + "</font></b>: " + save.children()[i].message;//добавляем строку с его именем и сообщением без ссылки и красного цвета }else{//если это отправил другой пользователь pole.htmlText += '<b><font color="#000080"><a href="http://vkontakte.ru/id'+save.children()[i].user_id+ '">' + save.children()[i].user_name + '</a>'+ "</font></b>: " + save.children()[i].message;//добавляем строку с его именем с ссылкой на его страничку синего цвета } } }}
Re: Проблема с контейнером
goroddorog, ...Кинь исходник в личку!
-
- Сообщения: 28
- Зарегистрирован: 28 июл 2010, 15:32
Re: Проблема с контейнером
Сейчас скину
Re: Проблема с контейнером
А в чём смысл 2 раза объявлять контейнер ?
надо всего лишь 1 раз объявить
надо всего лишь 1 раз объявить