内联YouTube视频在iOS上的cordova应用程序中不起作用

0qx6xfy6  于 2023-06-07  发布在  iOS
关注(0)|答案(4)|浏览(197)

我用cordova开发了一个移动的应用程序,我真的需要能够播放内联youtube视频。
我试着解决了一段时间:

  • 我在youtube iframe API中将属性playsinline设置为1
  • 我把<preference name="AllowInlineMediaPlayback" value="true"/>放在我的config.xml中
  • 然后在Xcode的plist中设置AllowsInlineMediaPlaybacktrue
  • 我甚至尝试将Webkit-PlaysinLine直接放到iframe上

结果很奇怪。当我第一次播放我的视频时,它会全屏显示。因此,我通过远程开发工具检查我的HTML,以检查属性是否设置得很好。是的!我做了我想编辑的事情,我不做任何修改,奇迹发生了:我的视频在线播放!
显然,我不能要求我的用户做这个把戏。
有人有办法解决这个问题吗?
这是一个紧急问题。。

6fe3ivhb

6fe3ivhb1#

文件夹cordova中有几个conf文件,在我的情况下,IOS中的一个是/Staging/config. xml尝试添加到此conf文件:preference name =“AllowsInlineMediaPlayback”value =“true”

zxlwwiss

zxlwwiss2#

更具体地说,您可以在Cordova config.xml中的上述回答中提到的@Patrice Tadrif优先添加此选项

<platform name="ios">
    <preference name="AllowsInlineMediaPlayback" value="true">
</platform>
ltskdhd1

ltskdhd13#

name=“AllowsInlineMediaPlayback”不正确。实际的cordova首选项名称是“AllowInlineMediaPlayback”(注意“Allows”中缺少“s”)。所以config.xml条目应该看起来像这样:在Cordova config.xml中的上述答案中提到的atrice Tadrif

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

另外,在html <video>标记中,不要忘记传递playsinline属性。
我是这样发现这个问题的:https://medium.com/thecreative-cat/allowinlinemediaplayback-is-not-allowsinlinemediaplayback-1a9123fdf88c

mqxuamgl

mqxuamgl4#

对我来说,这只是一个使用正确的首选项名称的情况,你错过了“允许”中的“s”。所以应该是:

<preference name="AllowsInlineMediaPlayback" value="true">

相关问题