【问题标题】:UIWebview with multiple Youtube video's, get notification of which one is playing带有多个 Youtube 视频的 UIWebview,获取正在播放的通知
【发布时间】:2014-08-29 05:18:25
【问题描述】:

我有一个包含内容的 webview,其中可以包含多个 youtube 视频。当用户开始播放视频时,我想知道这是哪一个。

我知道当视频以UIMoviePlayerControllerDidEnterFullscreenNotification 开头时我会收到通知,并且我可以在 web 视图中从 HTML 中找到 youtube URL,但是当有两个或更多时,我如何才能找出正在播放的视频?

也许有一些方法可以获取 MediaPlayer 并找出当前正在播放的 URL 或其他什么?

【问题讨论】:

    标签: ios video uiwebview youtube mpmovieplayercontroller


    【解决方案1】:

    您与UIWebView 联系的唯一方式是通过javaScript 网桥。

    我会解释:

    UIWebView 不知道你在里面显示什么,它几乎是一个通用的UIWebView,可以显示列表或简单的html 内容。

    要解决您的问题,您应该构建一个简单的桥(JS-IOS):

    JS->IOS:

    javascript当用户点击视频列表单元格时,执行

    window.location = "cellSelected=2";
    

    UIWebViewDelegate 会触发

    - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType;
    

    然后,你可以解析request.url

    IOS->JS:

    [webView stringByEvaluatingJavaScriptFromString:@"your javascript code string here"];
    

    希望这会让你首先解决你的问题。

    干杯!

    【讨论】:

      【解决方案2】:

      您是否尝试过contentURL,它是 MPMoviePlayerController 实例的属性?

      正如苹果所说: Here

      【讨论】:

        猜你喜欢
        • 2012-03-17
        • 2011-08-03
        • 2011-05-05
        • 2012-09-15
        • 1970-01-01
        • 2015-02-16
        • 1970-01-01
        • 1970-01-01
        • 2012-05-10
        相关资源
        最近更新 更多