【问题标题】:AIR Stagewebview not displaying youtube videosAIR Stagewebview 不显示 youtube 视频
【发布时间】:2017-04-16 16:39:30
【问题描述】:

我试图在 AIR 桌面上使用 stagewebview 加载 youtube 视频。 (窗户 10) 代码如下:

var SWV:StageWebView = new StageWebView(true);
SWV.addEventListener(ErrorEvent.ERROR, swvErrorHandler);
var swvHeight:Number = stage.stageHeight - (75);
var swvWidth:Number = stage.stageWidth;
var swvYCoord:Number = 75;
SWV.stage = stage;
SWV.viewPort = new Rectangle(0, swvYCoord, swvWidth, swvHeight);
var vId:String = 'QowwaefoCec';
var urlToLoad:String = "http://www.youtube.com/embed/"+vId+"?rel=0&controls=1&showinfo=0&autoplay=0";
SWV.loadURL(urlToLoad);

运行代码会给出一个黑色背景的窗口。右键单击它会弹出 adobe flashplayer 菜单,说明“电影未加载”。 Flash 版本为 25.0.0.148

如果我使用 urlToLoad="https://www.youtube.com/watch?v="+vId; 我得到了一个格式错误的 youtube 页面,其中大部分元素都丢失了。

尝试了视频数量。结果总是一样的。

有人可以帮忙吗?我记得大约一年前(当我在测试其他东西时)尝试过上面的代码。那时它肯定奏效了。无法理解为什么它现在不起作用。任何帮助将不胜感激。

【问题讨论】:

  • 您的代码在 Flash CS 调试器中和作为 EXE 应用程序中运行良好。我已经对其进行了测试(减去SWV.addEventListener... 并且StageWebView(true) 不需要true 部分)。我只能建议(1)稍等片刻(60秒),看看黑屏是否会变成视频海报......(2)仅使用您显示的代码进行基本测试(白色背景)。如果白色画布的任何部分变为黑色,至少它是尝试加载 YT 视频的信号。最后 ""Movie not loaded" 发生是因为某些 SWF 无法加载,您未显示的代码部分是否发生了这种情况?

标签: actionscript-3 flash air


【解决方案1】:

请尝试以下方法:

var urlToLoad:String = "<!DOCTYPE HTML><html><body><iframe style=\"border: 0; width: 100%; height: 100%; padding:0px; margin:0px\" id=\"player\" type=\"text/html\" src=\"http://www.youtube.com/embed/" + vId + "?fs=0\" frameborder=\"0\"></iframe></body></html>";
SWV.loadString(urlToLoad, "text/html" );

【讨论】:

  • 尝试使用您建议的网址。结果相同。黑色的窗户。除了右键菜单现在有放大、缩小等选项。
  • 问题是您使用的是StageWebView。一定要用ot吗?
  • 除了stagewebview还有哪些选项?能详细点吗?
  • 在此之前,请检查我的最新答案 - 尝试它应该可以工作。
  • actionscript 错误...错误 #2044:未处理的错误事件:。 text=不支持该协议。
【解决方案2】:

同样的问题。如果你只想玩,试试这个: browser.loadURL("https://www.youtube.com/v/hFupHx5G44s");

【讨论】:

    猜你喜欢
    • 2018-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-15
    • 1970-01-01
    相关资源
    最近更新 更多