Je suis en train de goofing avec la nouvelle API YouTube as3, mais je suis coincé. C'est jusqu'où j'ai obtenu (en regardant leur code d'échantillon).youtube lecteur chromeless as3
public class Main extends Sprite
{
Security.allowDomain("*");
private var player:Object;
private var loader:Loader;
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);
loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.INIT, onLoaderInit);
loader.load(new URLRequest("http://www.youtube.com/apiplayer?version=3"));
}
private function onLoaderInit(e:Event):void
{
addChild(loader);
loader.contentLoaderInfo.addEventListener("onReady", onPlayerReady);
loader.contentLoaderInfo.addEventListener("onError", onPlayerError);
loader.contentLoaderInfo.addEventListener("onStateChange", onPlayerStateChange);
loader.contentLoaderInfo.addEventListener("onPlayerQualityChange", onVideoPlaybackQualityChange);
}
private function onPlayerReady(e:Event):void
{
trace("Player ready: " + Object(e).Data);
}
private function onPlayerError(e:Event):void
{
trace("Player error: " + Object(e).Data);
}
private function onPlayerStateChange(e:Event):void
{
trace("Player state: " + Object(e).Data);
}
private function onVideoPlaybackQualityChange(e:Event):void
{
trace("Video quality: " + Object(e).Data);
}
}
Je ne sais pas vraiment ce que l'étape suivante est. Je n'ai pas d'erreurs et rien n'est tracé. Je suis à peu près sûr que mes événements ne sont pas implémentés correctement.
Mise à jour: J'ai suivi Amarghosh a répondu et a fait ceci:
private function onLoaderInit(e:Event):void
{
player = Sprite(loader.content);
addChild(player);
player.addEventListener("onReady", onPlayerReady);
player.addEventListener("onError", onPlayerError);
player.addEventListener("onStateChange", onPlayerStateChange);
player.addEventListener("onPlayerQualityChange", onVideoPlaybackQualityChange);
}
Maintenant, le onPlayerReady et les événements OnStateChange feux mais je reçois des erreurs. Lors de la recherche d'objets (e) .Data je reçois cette erreur
ReferenceError: Error #1069: the property Data was not found for com.google.youtube.event.ExternalEvent and there is no standard value.
(stranslated du suédois) Lors de la modification de l'objet (e.target) .Data il trace "undefined" et l'objet (e.target) traces objet [ SwfProxy].
Si j'essaie player.loadVideoById("uad17d5hR5s");
je reçois cette erreur:
1061: Call to a possibly undefined method loadVideoById through a reference with static type flash.display:Sprite.
C'était tout! Merci! –