浏览器播放音频,显示正在播放中缺没有声音,控制台警告:

The AudioContext was not allowed to start. It must be resumed (or created) after a user gesture on the page. 

网上的解决方案是:

        chrom浏览器:

地址栏中输入chrome://flags/#autoplay-policy;

Default换成No user gesture is required

设置成功但是依然没有效果

然后我在代码中加入了这句就可以了:

        navigator.mediaDevices.getUserMedia({ audio: true }); 

MediaDevices.getUserMedia() 会提示用户给予使用媒体输入的许可,媒体输入会产生一个MediaStream,里面包含了请求的媒体类型的轨道。getUserMedia的参数是一个包含了video 和 audio两个成员的MediaStreamConstraints 对象,例如 

以下同时请求不带任何参数的音频和视频:

{ audio: true, video: true }

如果设置以上还不行,那就需要你添加一个点击事件,需要播放的时候,模拟点击就可以播放了。 

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐