我用cordova开发了一个移动的应用程序,我真的需要能够播放内联youtube视频。
我试着解决了一段时间:
- 我在youtube iframe API中将属性
playsinline
设置为1
- 我把
<preference name="AllowInlineMediaPlayback" value="true"/>
放在我的config.xml中 - 然后在Xcode的plist中设置
AllowsInlineMediaPlayback
为true
- 我甚至尝试将Webkit-PlaysinLine直接放到iframe上
结果很奇怪。当我第一次播放我的视频时,它会全屏显示。因此,我通过远程开发工具检查我的HTML,以检查属性是否设置得很好。是的!我做了我想编辑的事情,我不做任何修改,奇迹发生了:我的视频在线播放!
显然,我不能要求我的用户做这个把戏。
有人有办法解决这个问题吗?
这是一个紧急问题。。
4条答案
按热度按时间6fe3ivhb1#
文件夹cordova中有几个conf文件,在我的情况下,IOS中的一个是/Staging/config. xml尝试添加到此conf文件:preference name =“AllowsInlineMediaPlayback”value =“true”
zxlwwiss2#
更具体地说,您可以在Cordova config.xml中的上述回答中提到的@Patrice Tadrif优先添加此选项
ltskdhd13#
name=“AllowsInlineMediaPlayback”不正确。实际的cordova首选项名称是“AllowInlineMediaPlayback”(注意“Allows”中缺少“s”)。所以config.xml条目应该看起来像这样:在Cordova config.xml中的上述答案中提到的atrice Tadrif
另外,在html
<video>
标记中,不要忘记传递playsinline
属性。我是这样发现这个问题的:https://medium.com/thecreative-cat/allowinlinemediaplayback-is-not-allowsinlinemediaplayback-1a9123fdf88c
mqxuamgl4#
对我来说,这只是一个使用正确的首选项名称的情况,你错过了“允许”中的“s”。所以应该是: