audioタグを利用して、効果音を出力しようとしたのですが、PCでは出力されて、スマホでは出力されないという問題にぶち当たりました。
色々調べてようやく解決方法が見つかったので、記事に残しておきます。
【失敗となるケース】
ネットの情報をもとに「audio.load();」、「audio.play();」を「addEventListener」にて利用してみましたが結果はNGでした。最終的に以下のコードにて、スマホでも音が出力されるようになりました。
【成功するケース】
<audio>の定義まわりの処理を変更しています。またスマホのパネルタッチの判定を「touchstart」から「touchstart click tap」に変更しました。
とりあえずは解決したのですが、HTML5、javascriptを利用してブラウザゲームを作ろうとした場合、スマホでの音関連処理が複雑になりそうだと、今回のケースで分かりました。
スマホでは複雑な効果音が入らないゲームを作るか、HTML5以外での実装を検討した方が良さそうです。