我想要獲取youtube播放列表並在IOS上播放視頻。我的應用可以在Android和Flex模擬器上正常工作,但不適用於IOS。看起來好像在IOS here中加載swfs是有限制的。如何使用Actionscript 3在IOS上播放youtube視頻3
我正在使用as3-youtube-data-api。任何人都可以指導我如何在iOS上使用as3(Flash Builder 4.5)嵌入或播放YouTube視頻,或者有其他方式嗎?
注意:在應用程序商店中有「思科技術支持」應用程序,它會播放嵌入到應用程序中的YouTube視頻。
更新 可以VideoDisplay工作,因爲我的播放列表沒有mp4嗎?
更多更新
這是多麼至少m個能夠發揮對IOS(read this)YouTube視頻,但再次機器人給了我黑色的屏幕。我能用這種方法做些什麼嗎?請給出你的建議。由於
var webView:StageWebView;
public function init():void
{
NativeApplication.nativeApplication.systemIdleMode = SystemIdleMode.KEEP_AWAKE;
webView = new StageWebView();
webView.viewPort = new Rectangle(0, 35, this.stage.stageWidth, this.stage.stageHeight);
webView.stage = this.stage;
var htmlString:String = "<!DOCTYPE HTML>" +
"<html><body><script>" +
"var tag = document.createElement('script');"+
"tag.src = \"http://www.youtube.com/player_api\";"+
"var firstScriptTag = document.getElementsByTagName('script')[0];"+
"firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);"+
"var player;"+
"function onYouTubeIframeAPIReady() {"+
"player = new YT.Player('player', {"+
"events: {"+
"'onReady': onPlayerReady,"+
"'onStateChange': onPlayerStateChange"+
"}"+
"});"+
"}"+
"function onPlayerReady(event) {"+
"event.target.playVideo();"+
"}"+
"var done = false;"+
"function onPlayerStateChange(event) {"+
"if (event.data == YT.PlayerState.PLAYING && !done) {"+
"setTimeout(stopVideo, 6000);"+
"done = true;"+
"}"+
"}"+
"function stopVideo() {"+
"player.stopVideo();"+
"}"+
"</script>"+
"<iframe id=\"player\" type=\"text/html\" width=\"100%\" height=\"400\" src=\"http://www.youtube.com/embed/g-YW2jkd-Ac\" frameborder=\"0\"></iframe>" +
"</body></html>";
webView.loadString(htmlString);
//webView.loadURL("http://www.youtube.com/embed/M7lc1UVf-VE");
}
public function dispose():void {
try {
webView.stage=null;
} catch (e:Error) { trace("error")}
}
使用我可以識別操作系統,並通過iOS和Android的工作我的方式。
再次,我們cannot invoke javascript in IOS,所以我無法停止視頻。
更新
這就是我所做的IOS。它提供了內置的播放器控件
public function initIOS():void
{
NativeApplication.nativeApplication.systemIdleMode = SystemIdleMode.KEEP_AWAKE;
webView = new StageWebView();
webView.viewPort = new Rectangle(0, 40, this.stage.stageWidth, this.stage.stageHeight-40);
webView.stage = this.stage;
webView.loadURL("http://www.youtube.com/embed/"+data.videoId+"");
}
感謝您的回覆。我試過[這](https://developers.google.com/youtube/iframe_api_reference#Getting_Started),它允許我在IOS上播放視頻,但不知道如何停止視頻和其他內容,這種iframe方法是否正確?對此有何建議?我已經更新了我的問題,可以在IOS上播放youtube視頻。 – abi1964
我正在使用[as3-youtube-data-api](https://code.google.com/p/as3-youtube-data-api/),然後使用[本機Objective-C庫for youtube]( https://developers.google.com/youtube/v3/)。任何幫助? – abi1964
不,as3-youtube-data-api不使用Objective-C ...它使用Actionscript,它不能在iOS上運行。如果必要的JavaScript控制播放器不適合你,你需要用XCode和Objective-C編寫一個本地iOS應用程序。但是,JavaScript方法應該可以工作,如果你使用類似phonegap的東西,你應該能夠跨平臺。關於這樣做有很多關於堆棧溢出的問題。我會盡快找出幾個參考文獻。 – jlmcdonald