5

我对移动应用程序还很陌生,所以我尝试使用 Phonegap 和 jQuery Mobile 构建一个简单的视频播放器。问题是,jQuery mobile 似乎出于某种原因阻止了视频播放。

为了排除故障,我将它直接剥离回以下 HTML,但得到相同的结果,即视频应该在的黑色矩形,但没有视频播放或控件。

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <meta name="viewport" content="width=device-width,initial-scale=1"/>
    <link rel="stylesheet" type="text/css" href="css/index.css" />
    <link rel="stylesheet" href="css/jquery.mobile-1.2.0.min.css" />
<script type="text/javascript" src="cordova-2.2.0.js"></script>
    <script type="text/javascript" src="js/index.js"></script>
    <script src="js/jquery-1.8.3.min.js"></script>
    <script src="js/jquery.mobile-1.2.0.js"></script>
    <title></title>
</head>
<body>
    <div>
        <video controls autoplay>
            <source src="video/video1.mp4" type="video/mp4" >
        </video>
    </div>
</body>
</html>

如果我删除指向 jquery.mobile-1.2.0.js 的链接,视频会显示并播放,否则,只会显示黑色矩形。

我根本不知道 jQuery mobile,但是在 js 中搜索视频元素的引用并没有显示出来,所以我不知道是什么阻止了它。

该代码在 Chrome 和 Firefox 中运行良好。Xcode 中没有控制台消息。我也尝试连接到http://debug.phonegap.com/但这也没有给出错误消息。

有任何想法吗??

4

1 回答 1

0

发生这种情况是因为 ios 阻止了内联媒体播放。对于 ios 您应该在 config.xml 中添加以下内容

 <preference name="AllowInlineMediaPlayback" value="true"/>

让你的代码工作。您可能需要将 webkit-playsinline 添加到您的视频标签中以查看更多信息,请查看Config.xml cordova doc

您可能需要设置其他属性,例如

MediaPlaybackRequiresUserAction(boolean) or MediaPlaybackRequiresUserAction(boolean)

在Config.xml cordova doc中获取有关它们的完整详细信息

于 2016-04-22T12:43:12.520 回答