[審査対策] 6.5.1 音楽は止めちゃダメ

#wp7dev_jp

せっかく、アプリやゲームを作ってだしたの、審査に落ちた、ってのは誰もが経験すること。でも、審査前のチェックで回避できることはたくさんあります。ということでよくある注意点をご紹介します。

6.5.1 初期起動機能

アプリケーションを起動したときに、ユーザーが電話で既に音楽を再生している場合、アプリケーションは Microsoft.Xna.Framework.Media.MediaPlayer クラスを呼び出すことによって、電話の MediaQueue 内のアクティブな音楽を一時停止、再開、または停止してはなりません。

問題と実装方法

アプリケーションが独自のバックグラウンドミュージック (BGM) を再生したり、 BGM の音量を調整する場合は、再生の停止や BGM の調整についてユーザーに同意を求める必要があります(メッセージ ダイアログや設定メニューなど)。この確認メッセージは、アプリケーションを起動するたびに表示される必要があります。ただし、ユーザーに対して確認メッセージの表示を選択する設定が用意されており、ユーザーがこの設定を使用してメッセージの表示を選択していない場合は除きます。

ちなみに、Windows Phone での BGM(音楽)再生の機能はデバイスで1つしかないので、音楽を聴いている最中にゲームを起動してゲーム内でBGMを再生すると、今まで聞いていた音楽は停止しゲームのBGMに切り替わってしまいます。ですので、音楽を聴いている状態で現在のゲームを起動すると聞いていた音楽は停止してしまいます。この場合、ゲームのBGMを流す前に、今聞いている音楽が停止することに対する同意を必ず得る必要があります

  • なお、現在音楽が再生されているかは、MediaPlayer.State で確認することが出来ます。
  • もし、確認音楽を止めずにゲームの音を鳴らしたい場合はMediaPlayerではなく、SoundEffectを使います
    (PCM Wave ファイルしか対応しないなど制約はあります)

 

BGMを使ったアプリで、よく引っかかる項目です。こんな項目でテストしてみてください。

  1. 普通にアプリを起動してチェック
  2. 音楽を再生している状態で、アプリを起動してチェック
  3. 音楽を再生してからいったん停止した状態で、アプリを起動してチェック

アプリが勝手に音楽を止めていないか、勝手に音楽を鳴らしていないか、チェックが必要です。