Показать сообщение отдельно
Старый 18.01.2013, 12:30
Kiray86 вне форума Посмотреть профиль Отправить личное сообщение для Kiray86 Найти все сообщения от Kiray86
  № 1  
Ответить с цитированием
Kiray86
 
Аватар для Kiray86

Регистрация: Jan 2013
Сообщений: 5
По умолчанию Проблема работы методов таблицы рекордов не "на локальной машине"

Проблемы суть такова..
Имеется небольшое тестовое приложение, при воспроизведении его на локальной машине, таблица рекордов заполняется, процесс "трейсится" в созданном специально для теста TextBar. Но при загрузке приложения вконтакт оно напрочь отказывается работать, в плане страдает именно выполнение completeFunction и errorFunc части метода getHighScore.

Код.

Код AS3:
package {
 
	import flash.display.MovieClip;
	import flash.display.*;
	import flash.events.*;
	import flash.ui.*; //Mouse
	import flash.utils.*;
 
	import vk.APIConnection;
 	import vk.events.*;
 	import vk.ui.VKButton;
 
 
	public class ScoreScreen extends MovieClip{
		private var _textBar:CurText = new CurText();
	//VK parameters
	private var VK:APIConnection;
	private var flashVars:Object;
	//Some parameters
	private var user_id:Number = new Number();	
 
	//Containers
	private var scoreCont:Sprite = new Sprite();
	private var btnsCont:Sprite = new Sprite();
 
	//Btns
	private var _BtnBack:Wind;
	private var _loader:Loader = new Loader();
 
		public function ScoreScreen() {
			if(stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
 
		private function init(e:Event = null):void{
			addChild(_textBar);
			_textBar.TextBar.appendText("\n" + "TEXT BAR TEST");
 
			addChild(scoreCont);
			addChild(btnsCont);
 
			removeEventListener(Event.ADDED_TO_STAGE, init);
			var flashVars: Object = stage.loaderInfo.parameters as Object; 
			if (!flashVars.api_id) { 
 
// -- Your code for local testing:
flashVars['api_id'] = 3228620;
flashVars['viewer_id'] = 115441537;
flashVars['sid'] = "3d0a675f1e2549d172a5dafdf35fee95d87b76a3e210fa3a413ea490f527218a9679876d8268a5e32707c";
flashVars['secret'] = "aa8e2ba6ab";
// -- //
			}
			user_id = flashVars['viewer_id'];
			VK = new APIConnection(flashVars);
 
 
			_BtnBack = new Wind();
			_BtnBack.x = 50;
			_BtnBack.y = 50;
			Wind(_BtnBack).setM("== BACK ==", 74, 20);
 
			_textBar.TextBar.appendText("\n" + "SHOW BEST FUNC");
			VK.api("getHighScores", {}, completeFunc, errorFunc);
			_textBar.TextBar.appendText("\n" + "VK.API func added");
 
			btnsCont.addChild(_loader);
			_loader.x = 190.5;
			_loader.y = 200;
 
			//addEventListener(Event., 	showBest);
			//showBest();
 
			btnsCont.addChild(_BtnBack);
			_BtnBack.addEventListener(MouseEvent.CLICK, endFunc);
		}
 
		private function endFunc(e:MouseEvent):void {
 
			for( var j:int = 0; j < scoreCont.numChildren; j++ ){
				scoreCont.removeChild(scoreCont.getChildAt(j));
			}
 
			btnsCont.removeChild(_BtnBack);
			_BtnBack.removeEventListener(MouseEvent.CLICK, endFunc);
			_BtnBack = null;
 
			dispatchEvent(new Event("BACK_BTN", true));
		}
 
		private function showBest():void {
			_textBar.TextBar.appendText("\n" + "SHOW BEST FUNC");
			VK.api("getHighScores", {}, completeFunc, errorFunc);
			_textBar.TextBar.appendText("\n" + "VK.API func added");
 
			btnsCont.addChild(_loader);
			_loader.x = 190.5;
			_loader.y = 200;
		}
 
		private function completeFunc(data:Object):void{
			_textBar.TextBar.appendText("\n" + "Complete function");
			_textBar.TextBar.appendText("\n" + data);
 
			btnsCont.removeChild(_loader);
			_loader = null;
 
			for( var i:int = 0; i < data.length; i++ ){
				_textBar.TextBar.appendText("\n" + data[i].user_name + " " + data[i].score + "sec");
 
				trace(i+1 + ": " + data[i].user_name + " " + data[i].score + "sec");
				var setters:String = String(i+1 + ": " + data[i]['user_name'] + " " + data[i].score + "sec");
 
				var _bar:Wind = new Wind();
 
				var widthP:int = 170;			//Parameters
				var heightP:int = 20;
 
				Wind(_bar).setM(setters, widthP, heightP);
				_bar.x = (stage.stageWidth - widthP) / 2;
				_bar.y = (stage.stageHeight - heightP) / 2 - 140 + i * 30;
				_bar.alpha = 1 - (0.3 * i)/data.length;
 
 
				scoreCont.addChild(_bar);
			}
		}
 
		private function errorFunc(data:Object):void{
			trace(data.error_msg);
			_textBar.TextBar.appendText("\n" + data.error_msg);
		}
	}
}
Исходник смотрите во вложениях к теме.

С чем может быть это связано?
Вложения
Тип файла: rar aboard.rar (182.9 Кб, 20 просмотров)


Последний раз редактировалось Kiray86; 18.01.2013 в 12:41.