Closed argentum384 closed 3 years ago
具体的には、元々の実装では、「JS読み込み時にAudioContextを生成し、画面のどこかをクリック時にアンロック」されていたのを、 「HTML上で プレイヤーを表すDOMに 専用のクラスをつけ、そのクラスがクリックされたときに 生成&アンロック」を行うようにしました。
の対応で未考慮だった以下の点を対応する。
click
FlMML.prepare(playerSelectors)
flmml-on-html5.ts
PLAYER_SELECTORS
MsgType.BOOT
AudioContext.sampleRate
念のため play() 実行までに生成 & アンロックが間に合わなかった場合の救済措置として、 play() 内にも AudioContext 未生成の場合のみ生成 & アンロックする処理を追加する。
play()
これですべてのケースが救えるわけではないので、ライブラリ利用側には FlMML.prepare(playerSelectors) の利用か PLAYER_SELECTORS の指定を勧める。
概要
32 の続きの対応。
の対応で未考慮だった以下の点を対応する。
click
イベントが発生する前にFlMML.prepare(playerSelectors)
で対象の DOM 要素を指定させるようにするflmml-on-html5.ts
ソースコード内のPLAYER_SELECTORS
に CSS セレクタを指定してビルドした場合は、上記FlMML.prepare(playerSelectors)
を実行することなく表題の生成 & アンロックが行えるものとするMsgType.BOOT
送信) がスクリプト読み込み時だったのを AudioContext 生成後に変更する(
AudioContext.sampleRate
がシーケンサに渡せなかったため )