1

現在、私のアプリでは、電話で再生中の音楽を一時停止し、MediaElement を使用してサウンドを再生しています。サウンドが再生された後、音楽が続きます。すべて正常に動作しますが、音楽の音量を止めるのではなく下げたいと思います。

1) これは wp7 で実行できますか?

2) もしそうなら、どのように?こんな風に音量を変えてみたり。

void PauseMusic()
{
   FrameworkDispatcher.Update();
   // Pause the Zune player if it is already playing music.
   if (!MediaPlayer.GameHasControl)
   {
      //MediaPlayer.Pause();
      MediaPlayer.Volume = 0.7f;
      resumeMediaPlayerAfterDone = true;
   }
 }

こんな風に音声が再生されます。

void PlayAudioCue(string path)
{
    PauseMusic();
    AudioPlayer.Stop();            
    AudioPlayer.Source = new Uri("/Audio/" + path, UriKind.Relative);            
}

void AudioPlayer_MediaOpened(object sender, RoutedEventArgs e)
{
    AudioPlayer.Position = new TimeSpan(0);
    AudioPlayer.Volume = 1;
    AudioPlayer.Play();
}
4

1 に答える 1

1

まず、あなたは自分のアプリをマーケットプレイスに公開したいと思っているに違いありません。認証プロセスに失敗します。6.5.1 段落を見てください – 初期起動機能

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

アプリケーションが独自のバックグラウンド ミュージックを再生したり、バックグラウンド ミュージックの音量を調整したりする場合は、バックグラウンド ミュージックの再生を停止/調整するための同意をユーザーに求める必要があります (メッセージ ダイアログや設定メニューなど)。このプロンプトは、ユーザーにオプトイン設定が提供されていて、ユーザーがこの設定を使用してオプトインしていない限り、アプリケーションが起動するたびに発生する必要があります。

詳細

100% 確信はありませんが、ユーザーの音楽の音量を下げることはできません。

于 2012-05-08T16:25:25.580 に答える