在我的项目中,我尝试在Android设备上自动播放视频。目前,我有以下内容:
<videogular vg-player-ready="ionicVideoCtrl.onPlayerReady($API)"
vg-complete="ionicVideoCtrl.onCompleteVideo()"
vg-theme="ionicVideoCtrl.config.theme"
vg-autoplay="ionicVideoCtrl.config.autoPlay">
<vg-media vg-src="ionicVideoCtrl.config.sources"
vg-youtube="{{ ionicVideoCtrl.config.youTubeOptions }}"
vg-native-controls="ionicVideoCtrl.isYouTube">
</vg-media>
<vg-buffering data-ng-if="!ionicVideoCtrl.config.isYouTube"></vg-buffering>
<vg-controls data-ng-if="!ionicVideoCtrl.config.isYouTube"
vg-autohide="ionicVideoCtrl.config.autoHide"
vg-autohide-time="ionicVideoCtrl.config.autoHideTime">
<vg-play-pause-button></vg-play-pause-button>
<vg-time-display>{{ currentTime | date:'mm:ss' }}</vg-time-display>
<vg-scrub-bar>
<vg-scrub-bar-current-time></vg-scrub-bar-current-time>
</vg-scrub-bar>
<vg-time-display>{{ timeLeft | date:'mm:ss' }}</vg-time-display>
<vg-volume>
<vg-mute-button></vg-mute-button>
<vg-volume-bar></vg-volume-bar>
</vg-volume>
<vg-fullscreen-button></vg-fullscreen-button>
</vg-controls>
<vg-poster data-ng-if="!ionicVideoCtrl.config.isYouTube || ionicVideoCtrl.isLoadingVideo"
vg-url='ionicVideoCtrl.config.plugins.poster'></vg-poster>
<!--<vg-analytics vg-track-info="ionicVideoCtrl.config.plugins.analytics"></vg-analytics>-->
<vg-overlay-play data-ng-if="!ionicVideoCtrl.config.isYouTube"></vg-overlay-play>
</videogular>
ionicVideoCtrl.config.autoPlay = true
和ionicVideoCtrl.config.youTubeOptions = 'rel=0;showinfo=0;autoplay=1;'
这在我的浏览器中运行良好,但在Android设备上运行不正常。这是OS限制的吗?有解决方法吗?
答案 0 :(得分:2)
我从未使用过Videogular,但Ionic应用程序只是简单的HTML5网络应用程序。
因此,任何其他网页的规则都适用于此。
请参阅说明
的official documentation如果视频元素进入视图,如果设置了自动播放和静音,则会自动开始播放,并且可以使用play()以实用方式启动静音视频的播放。以前,无论静音状态如何,都必须通过用户手势启动移动设备上的播放。
以下代码也可以在文档中找到:
<video autoplay muted>
<source src="video.webm" type="video/webm" />
<source src="video.mp4" type="video/mp4" />
</video>
是的,确实是操作系统限制。