【问题标题】:YouTube Iframe API on Iphone without fullscreenIphone 上的 YouTube Iframe API 没有全屏
【发布时间】:2016-07-02 19:27:45
【问题描述】:

我有一个网络应用程序,它使用 YouTube Iframe API 将歌词和和弦与 YouTube 歌曲同步。嵌入式视频在没有全屏的情况下内联播放对我们来说至关重要。否则用户无法在页面上看到歌词和和弦,应用程序将毫无意义。

这里是demo

我们 50% 的流量来自 iphone,但 iphone 总是全屏播放 youtube 视频。

这是嵌入视频的代码

var player;

function onYouTubeIframeAPIReady() {
  player = new YT.Player('player', {
    height: '390',
    width: '640',
    videoId: $("#ytid").attr("value"),
    playerVars: {'theme':'light','color':'white','modestbranding':1,'rel':0},
    events: {
      'onReady': onPlayerReady,
      'onStateChange': onPlayerStateChange
    }
  });

在网络上寻找解决方案,我们尝试了一些修复,但它们都不能在 iphone 上运行。如果我们相信它可以工作,我们也准备好开发一个 Swift 应用程序。然而,网络搜索也表明相反的情况。

  1. 是否有可靠的解决方法来内联播放 YouTube Iframe API 视频?
  2. 我们可以通过开发原生 IOS 应用来解决我们的问题吗?

【问题讨论】:

    标签: javascript ios iphone youtube-iframe-api


    【解决方案1】:

    将参数'playsinline':'1' 添加到playerVars 对我有用。我不知道这是否也适用于 Web,我正在使用 React Native 应用程序中的 WebView。

    var player;
    
    function onYouTubeIframeAPIReady() {
        player = new YT.Player('player', {
        height: '390',
        width: '640',
        videoId: $("#ytid").attr("value"),
        playerVars: {'playsinline':'1', 'theme':'light','color':'white','modestbranding':1,'rel':0},
        events: {
            'onReady': onPlayerReady,
            'onStateChange': onPlayerStateChange
        }
    });
    

    【讨论】:

      【解决方案2】:

      概括地说:不,iPhone 上的 Safari 将始终全屏播放视频

      iPad确实支持内嵌视频播放。

      如果您有自己的 iOS 应用程序,显然您可以更好地控制视频播放。查看您的网站,拥有一个应用程序肯定可以让您更好地控制自动滚动等,因为它确实打开了一个充满能力(和复杂性!)的世界。

      【讨论】:

      猜你喜欢
      • 2014-05-01
      • 2021-08-02
      • 2013-03-16
      • 1970-01-01
      • 1970-01-01
      • 2015-07-31
      • 2017-01-29
      • 2015-02-27
      • 1970-01-01
      相关资源
      最近更新 更多