PhoneGap iOS 无法使用 HTML 5 播放视频

Posted

技术标签:

【中文标题】PhoneGap iOS 无法使用 HTML 5 播放视频【英文标题】:PhoneGap iOS can't play video using HTML 5 【发布时间】:2015-05-16 19:11:17 【问题描述】:

我正在构建 phonegap 应用程序,我需要在其中播放视频。我知道为了在 android 上播放视频,我需要使用可用的插件之一,但要在 ios 上播放视频,我可以使用 html 5 video 标签。我有这些代码行:

 <div id="video">
    <video id="video01"   controls>
        <source src="images/test2.mp4" type="video/mp4" />
    </video>
</div>

我可以看到“视频框”,但由于某种原因无法播放视频。在控制台中我没有看到任何错误。

我使用的视频来自这个页面:http://www.quirksmode.org/html5/tests/video.html

在 iPhone Safari 中,我可以毫无问题地从该页面加载 MP4 版本。

【问题讨论】:

如果设置为自动播放会怎样? 同样的事情,即什么也没发生 您使用的是哪个版本的 iOS?有一些 SO 帖子表明 iOS v8.0 的早期版本在 web 视图中破坏了视频播放 【参考方案1】:

我知道这已经有一段时间了,但我正在查看我的一些旧问题,我注意到我完全忘记发布我的问题的解决方案。

最后,我设法使用 Cordova File api 解决了这个问题,并且解决方案看起来很不错。像这样:

 window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function (fileSystem) 
                console.log("gotFS");


                getFolder(fileSystem, "video", function(folder) 
                    filePath = folder.toURL() + "\/" + "videotest.mp4";

                    playVideo(filePath);

                , function() 
                    console.log("failed to get folder");
                );

            ,
            function() 
                console.log("failed to get filesystem");
            );



function playVideo(uri) 


        var player = document.getElementById("videoPlayer");
        var source = document.createElement("source");

        source.src = uri;
        source.type = "video/mp4";

        player.appendChild(source);
        player.load();
    

【讨论】:

以上是关于PhoneGap iOS 无法使用 HTML 5 播放视频的主要内容,如果未能解决你的问题,请参考以下文章

使用 Phonegap 和 iOS 5.1 时如何阻止 HTML 5 数据库被删除

在ios设备上集成phonegap inapp购买插件时出错

iOS notification.alert() 无法使用 Phonegap 2.3.0

Phonegap 无法将 HTML5 移动应用程序转换为 IOS

Phonegap 1.5 (Cordova) ios childbrowser 根本无法打开

无法使用xcode phonegap在ios中隐藏状态栏