H5マイクロチャンネルのオーディオタブページが自動的にIOSで再生されません

背景:ユーザーが背景にフォームを送信するH5ページでは、結果が楽屋成功返され、自動的に起動し、バックグラウンドで音楽を再生

   出现的问题:在安卓手机上正常,iOS中没有反应

オンラインで検索、いくつかは、後に、ユーザが対話をしない限りiOSのは、自動演奏の音楽を許可していないので、ということを学んだ後

解決策:
1.ページはちょうどそれが比較的容易なハンドルで、自動的にサウンドを再生する必要がロードされ、そして達成するために、マイクロチャネルのAPIを提供するために使用することができるならば(それはいくつかの変更を行うために内部でなければなりません)

 // 通过config接口注入权限验证配置后, 在 ready 中 play 一下 audio
    function autoPlayAudio1() {
        wx.config({
            // 配置信息, 即使不正确也能使用 wx.ready
            debug: false,
            appId: '',
            timestamp: 1,
            nonceStr: '',
            signature: '',
            jsApiList: []
        });
        wx.ready(function() {
            document.getElementById('bgmusic').play();
        });
    }

参考:正しい方法でマイクロチャネルのiOSブラウザのHTML5オーディオ(音楽)で自動再生

2.は、特定の時刻にバックグラウンドミュージックを演奏する必要があります

iOS版が制限されているので、それが唯一の相互作用の実装を介してユーザとの希望、使用HTMLはコールバック関数の中で、それに演奏touchstartイベントを追加するために、それは注意が必要です。

一度だけそれに触れるので、あなたがイベントを登録する1つの方法を使用することができますので、実際のユーザーとの対話が応答します取得するには、トリガjqueryのトリガーによって同じ存在することはできません
                        audio.play(); //安卓手机可以直接播放
                    // 为iOS做兼容,为了保险起见,触摸事件都给他加上
                        if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {
                            var noPlay = true;
                            $('html').one('touchstart',function(){
                                if(noPlay) {
                                audio.play();
                                noPlay = false;
                                }
                            })
                            $('html').one('touchmove',function(){
                                if(noPlay) {
                                audio.play();
                                noPlay = false;
                                }
                            })
                            $('html').one('touchend',function(){
                                if(noPlay) {
                                audio.play();
                                noPlay = false;
                                }
                            })

バックグラウンドミュージックがここで演奏する必要があるが、私はページを触れない場合はユーザ体験は良い十分ではありません、それが再生されていない、あなたがより良い方法を持っている場合は、私のQQを追加することができます:32319149ああ話し合う:)

参考記事:

H5ケーススタディ:問題が自動的に再生されないH5のBGMを解く
のiOSオーディオの下で解決すると、自動的に再生されません

おすすめ

転載: www.cnblogs.com/baimeishaoxia/p/11967114.html