LoginSignup
3
2

More than 5 years have passed since last update.

SoundJS使ってiOSでBGMが鳴らなかった話

Last updated at Posted at 2014-12-01

CreateJSでゲーム作ってたので、SoundJSで音を鳴らそうと思ったら鳴らなかったんです!

やりたかったこと

  1. ページを開きます
  2. Canvasで動くゲームが起動します
  3. BGMが鳴ります

PCとかChrome for Androidでは普通にOK。
でもSafari for iOSだとBGMが鳴らない。なぜなんだぜ?

音を鳴らす前に画面をタッチさせよう

こことかに(たぶん)書いてある
http://www.createjs.com/tutorials/Mobile%20Safe%20Approach/

つまり、ページを開いただけでいきなり爆音が鳴り響くページは作れないとのこと。
ユーザの操作(タッチとか)に紐づくイベントを起点にしないと音を流し始められないらしい。

ぼくのとった方法

  1. BGM再生予定リスト的な配列にSoundJSのインスタンスを突っ込む
  2. JS内でbodyタグにtouchstartイベントを仕込む
  3. touchstartイベントが発火したら予定リストの音を鳴らす

もっと簡単だった方法

タイトル画面に「GAME START」のボタンをつける

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2