Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > API приложений и сред

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 27.05.2011, 16:32
Сeргей вне форума Посмотреть профиль Отправить личное сообщение для Сeргей Найти все сообщения от Сeргей
  № 1  
Ответить с цитированием
Сeргей

Регистрация: May 2011
Адрес: Санкт-Петербург
Сообщений: 44
По умолчанию Не работает VK.api из дочернего фильма.

Проблема в следующем: есть фильм-папа, который запрашивает права у пользователя, добавляет приложение. Потом после выполнения всех условий, начинает загрузку дочернего фильма. В дочернем фильме идет обращение к VK.api. Например, friends.get. Функция не работает. Если вместо фильма-папы загрузить дочерний фильм, функция работает исправно.
В чем проблема?
Может неправильное обращение к VK.api в дочернем фильме?

Примеры кода:
Фильм-папа:
Код AS3:
import vk.APIConnection;
import vk.events.*;
var flashVars: Object = stage.loaderInfo.parameters as Object;
var VK: APIConnection = new APIConnection(flashVars);
a1.visible = false;
VK.addEventListener("onApplicationAdded", onApplicationAdded);
function onApplicationAdded(e:CustomEvent):void {
	VK.callMethod("showSettingsBox", 1030);
	a1.visible = true;
}
if (flashVars.is_app_user == 1) {
	if (!(flashVars.api_settings & 2) || !(flashVars.api_settings & 4) || !(flashVars.api_settings & 1024)) {
		VK.callMethod("showSettingsBox", 1030);
		a1.visible = true;
	} else {
		var loader:Loader = new Loader();
		var url:URLRequest = new URLRequest("http://cs10344.vkontakte.ru/u2932426/602e43ed452aa9.zip");
		loader.load(url);
		addChild(loader);
	}
}
if (flashVars.is_app_user == 0) {
	VK.callMethod("showInstallBox");
}
a1.addEventListener(MouseEvent.CLICK, click_);
function click_(evt:MouseEvent) {
	VK.callMethod("showSettingsBox", 1030);
}

Дочерний фильм:
Код AS3:
import vk.APIConnection;
var flashVars:Object=stage.loaderInfo.parameters as Object;
var VK:APIConnection=new APIConnection(flashVars);
VK.api("friends.get", {uid:flashVars.viewer_id}, Friends, FriendsErr);
function Friends(response:Object) {
	function getLength(o:Object):uint {
		var len:uint = 0;
		for (var item:* in o) {
			if (item != "mx_internal_uid") {
				len++;
			}
		}
		return len;
	}
	var func =getLength(response);
	var text_:TextField=new TextField();
	text_.text = "У вас "+func " друзей";
	addChild(text_);
}
function FriendsErr(response:Object) {
	var text_:TextField=new TextField();
           text_.width = 300;
	text_.text = "Ошибочка вышла. Попробуйте еще разок!";
	addChild(text_);
}

Создать новую тему   Часовой пояс GMT +4, время: 02:56.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 02:56.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.