2013-06-25 5 views
1

IOS에서 재생 목록을 가져 와서 동영상을 재생하려고합니다. 내 응용 프로그램은 Android 및 Flex 시뮬레이터에서 제대로 작동하지만 IOS에서는 작동하지 않습니다. IOS here에서 swfs를로드하는 데 제한이있는 것처럼 보입니다.Actionscript 3를 사용하여 IOS에서 YouTube 비디오를 재생하는 방법

나는 as3-youtube-data-api을 사용하고 있습니다. 아무도 IOS에있는 as3 (Flash Builder 4.5)를 사용하여 YouTube 비디오를 퍼가거나 재생할 수있는 방법을 안내하거나 다른 방법을 사용할 수 있습니까?

참고 : 앱 스토어에는 "Cisco 기술 지원"앱이 있습니다.이 앱은 앱에 내장 된 youtube 비디오를 재생합니다.

업데이트VideoDisplay 내 재생 목록에 mp4가 없으므로 작동합니까?

더 많은 업데이트

이 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")} 
} 

나는 OS를 확인하고 IOS와 안드로이드를 통해 내 방식으로 작동 할 수 Capabilities.os 사용.

다시 말하지만, 우리는 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+""); 
} 

답변

0

제공된 링크에서 언급했듯이 iOS에서 actionscript swfs를 실행할 수 없습니다. 안드로이드에서도 그렇게 할 방법이 없기까지 오래 걸리지 않을 것입니다. VideoDisplay도 작동하지 않습니다. 글쎄, 그것은 액션 스크립트입니다.

iOS에서 YouTube 동영상을 재생하려면 재생 목록 가져 오기 및 동영상 재생을 완벽하게 지원할 native Objective-C libraries을 사용할 수 있습니다 (iOS에서 언급 한 앱 및 다른 YouTube 기반 앱과 동일). 또는 webapp에서 javascript 클라이언트를 사용해 볼 수도 있습니다.

+0

답장을 보내 주셔서 감사합니다. [IOS]에서 동영상을 재생할 수있게 해주는 [this] (https://developers.google.com/youtube/iframe_reference#Getting_Started)을 시도했지만 동영상 및 기타 콘텐츠를 멈출 수있는 방법을 모르지만이 iframe 방법이 맞습니까? 이것에 대한 제안? IOS에서 YouTube 동영상을 재생할 수있는 iframe 사용법으로 제 질문을 업데이트했습니다. – abi1964

+0

[as3-youtube-data-api] (https://code.google.com/p/as3-youtube-data-api/)를 사용하고 있습니다. [YouTube for Native Objective-C Library]를 사용하고 있습니다. https://developers.google.com/youtube/v3/). 어떤 도움이 필요합니까? – abi1964

+0

아니요, as3-youtube-data-api는 Objective-C를 사용하지 않습니다 ... iOS에서 실행할 수없는 Actionscript를 사용합니다. 플레이어를 제어하는 ​​데 필요한 자바 스크립트가 작동하지 않는 경우 Xcode 및 Objective-C와 함께 기본 iOS 앱을 작성해야합니다. 그러나 자바 스크립트 접근 방식이 작동해야하며, phonegap과 같은 것을 사용하면 크로스 플랫폼을 만들 수 있어야합니다. 이 작업을 수행하는 데 스택 오버플로에 관해 많은 질문이 있습니다. 나는 곧 몇 가지 참조를 파헤 치려고 노력할 것이다. – jlmcdonald

관련 문제