在Trigger.io中内嵌视频播放

时间:2013-12-27 16:37:46

标签: ios html5 video uiwebview trigger.io

有没有办法播放视频而不启动全屏? Trigger.IO API没有显示设置的选项,在HTML5视频标签中添加'webkit-playsinline'在iPhone上也不够,因为它需要将'UIWebView'的属性'allowsInlineMediaPlayback'设置为' YES”。

我希望Trigger.IO可以选择某种方式来启动或关闭此属性......

P.S。看起来Phone Gap已经支持它了......

1 个答案:

答案 0 :(得分:1)

您可以轻松编写自己的native module来更改Trigger.io应用中的WebView属性。该功能可能看起来很像这样:

+ (void)enableInlineMediaPlayback:(ForgeTask*)task {
    if (NSClassFromString(@"WKWebView") && [[ForgeApp sharedApp] useWKWebView]) {
        // Handle new WebView 
        WKWebView *webView = (WKWebView*)[[ForgeApp sharedApp] webView];
        WKWebViewConfiguration *configuration = [[WKWebViewConfiguration alloc] init];
        configuration.allowsInlineMediaPlayback = YES;
        webView.configuration = configuration;
    } else {
        // Handle old WebView
        UIWebView *webView = (UIWebView*)[[ForgeApp sharedApp] webView];
        webView.allowsInlineMediaPlayback = YES;
    }
    [task success:nil];
}

此外,您需要将webkit-playsinline属性添加到视频HTML标记中。


编辑:我已调整代码以包含iOS8和WKWebView的相关代码。