【问题标题】:Cordova 9 ios 5.1.1 - video playback from storageCordova 9 ios 5.1.1 - 从存储中播放视频
【发布时间】:2020-08-13 08:21:58
【问题描述】:

我正在尝试 3 天的时间来播放 cordova-ios 5.1.1 on Cordova 9 的视频。

简而言之,这个应用程序应该做什么?

视频被下载到设备存储中,并且应该可以从该设备作为离线视频播放器播放。

我必须先解决几个问题:

  • 由于 'cordova-plugin-file-transfer' 与 Cordova 10 不兼容而卡在 Cordova 9 --> https://github.com/apache/cordova-plugin-file-transfer/issues/258

  • 尚无法使用 Cordova 10,因为建议的在 Cordova 10 上下载大文件的方法会耗尽设备上的内存,因为数据首先完全加载到内存中

  • 使用 cdvfile:// 模式打开本地视频给我一个超时,视频不启动

  • 使用本地服务器插件对我也不起作用

我确实尝试了很多配置和代码来让它工作,并在 git 上花了很多时间试图找出我可能缺少的东西。

这些是我为离线视频播放器的工作概念尝试的插件:

https://github.com/apache/cordova-plugin-wkwebview-engine

https://github.com/oracle/cordova-plugin-wkwebview-file-xhr

https://github.com/TheMattRay/cordova-plugin-wkwebviewxhrfix

https://github.com/floatinghotpot/cordova-httpd

https://github.com/communico/cordova-httpd

https://github.com/nchutchind/cordova-plugin-streaming-media

这是我的内容安全政策:

<meta http-equiv="Content-Security-Policy" content="default-src * 'self' 'unsafe-inline' 
'unsafe-eval' cdvfile: data: gap: content: blob:">

网络上有关此的文档有点令人困惑,混合了显然不再起作用的旧东西。

请记住,我不是要求您提供工作代码,而是一个仍然有效的概念,并且您确实成功地使用了在带有平台 ios 5.1 的 Cordova 9 上使用 HTML5-video 标签从设备存储中播放巨大的视频文件.1.

...当然,一些帮助代码行仍然值得赞赏 :-)

感谢您告诉我什么确实有效,什么不再有效。

【问题讨论】:

    标签: ios file cordova video


    【解决方案1】:

    我能够解决这个问题。这是一个适用于所有可能遇到此问题的人的解决方案。

    基本上我遇到了配置错误和一些文件名/文件路径问题。

    我可以确认上面的概念适用于这个平台和插件:

    Cordova 9 @ ios 5.1.1
    
    cordova-plugin-file-transfer 1.7.1 "File Transfer"
    cordova-plugin-streaming-media 2.3.0 "StreamingMedia"
    cordova-plugin-wkwebview-engine 1.2.1 "Cordova WKWebView Engine"
    cordova-plugin-wkwebview-file-xhr 2.1.4 "Cordova WKWebView File XHR Plugin"
    

    不要忘记根据 wkwebview 插件将所有设置添加到您的 config.xml。

    确保像这样设置下载路径(文档建议使用 cdvfile://)

    fileTransfer.download(encodeURI(url), cordova.file.dataDirectory + '/' + filename,...
    

    视频播放是这样的:

    window.plugins.streamingMedia.playVideo(cordova.file.dataDirectory + "/" + filename, options)
    

    内容安全策略如下所示:

    <meta http-equiv="Content-Security-Policy" content="default-src * 'self' 'unsafe-inline' 'unsafe-eval' data: gap: content:">
    

    【讨论】:

      猜你喜欢
      • 2017-10-31
      • 1970-01-01
      • 1970-01-01
      • 2015-12-09
      • 2015-09-09
      • 2015-07-01
      • 1970-01-01
      • 2020-05-05
      • 1970-01-01
      相关资源
      最近更新 更多