我在我的iOS应用程序中添加了视频播放器,即使在设置了 mediaControlStyle : Titanium.Media.VIDEO_CONTROL_NONE
和 showsControls : 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 Version: 8.9.1
npm Version: 5.5.1
CLI Version: 5.1.1
任何帮助将受到高度赞赏 .
3 回答
在iOS 11.3及更高版本上某些应用程序无法播放视频声音 . 看起来像iOS本身的错误 . 这可能对某人有帮助 . 请参阅以下链接了解更多详情 .
https://discussions.apple.com/thread/3008964
通过创建一个blank.mp4(4秒白屏)并在创建时将其设置为视频播放器的URL来解决这个问题 . 这样,控件不会在更改时显示 .
showControls
部分是7.3.0中修复的错误:https://github.com/appcelerator/titanium_mobile/pull/9852如果您在7.2.0中需要它,您只需更改文件(
iphone/Classes/TiMediaVideoPlayerProxy.m
)并添加上述PR中的更改 . 工作良好 .关于声音:确保您的设备没有静音:)