Appcelerator视频播放器显示媒体控件,但不播放声音

时间:2018-07-04 05:14:32

标签: ios appcelerator

我在iOS应用程序中添加了视频播放器,即使设置了mediaControlStyle : Titanium.Media.VIDEO_CONTROL_NONEshowsControls : false属性,它也显示了媒体控制。此外,视频无法在模拟器上非常清晰地播放声音的iOS设备上播放声音。

将此属性<property name="run-on-main-thread" type="bool">false</property>设置为true会隐藏Media控件,但这会导致应用程序崩溃,因为我在应用程序的开头(紧随启动屏幕之后)立即调用Web服务的嵌套函数。在以前的SDK版本中,它曾经可以正常工作。

这是我的代码。

var movie = Titanium.Media.createVideoPlayer({
    url : "xyz.mp4",
    autoplay : true,
    height : Ti.UI.FILL,
    width : Ti.UI.FILL,
    mediaControlStyle : Titanium.Media.VIDEO_CONTROL_NONE,
    showsControls : false
});

Appcelerator SDK: 7.2.0.GA
Node.js版本::8.9.1
npm版本::5.5.1
CLI版本: 5.1.1

我们将不胜感激任何帮助。

3 个答案:

答案 0 :(得分:1)

showControls部分是7.3.0中修复的错误:https://github.com/appcelerator/titanium_mobile/pull/9852

如果在7.2.0中需要它,则只需更改文件(iphone/Classes/TiMediaVideoPlayerProxy.m)并从上面的PR中添加更改。效果很好。

关于声音:确保您的设备未静音:)

答案 1 :(得分:0)

在iOS 11.3和更高版本上,某些应用程序无法播放视频声音。看起来像iOS本身的错误。这可能会帮助某人。请参阅下面的链接以获取更多详细信息。

https://discussions.apple.com/thread/3008964

答案 2 :(得分:-1)

通过创建blank.mp4(白屏4秒)并在创建时将其设置为视频播放器的URL来解决此问题。这样,控件就不会在更改时显示。