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