我的一个应用程序最近未通过认证,因为:“我的应用程序停止播放背景音乐而不询问用户何时播放某些音乐”。
现在问题是:我们如何检测背景中是否有音乐播放?
此致
答案 0 :(得分:7)
using Microsoft.Xna.Framework.Media;
...
if (Microsoft.Xna.Framework.Media.MediaPlayer.State == MediaState.Playing)
{
....
}
答案 1 :(得分:6)
您需要检查MediaPlayer.GameHasControl属性。
即使您正在播放音乐,也会播放MediaPlayer.State。 GameHasControl确定音乐是从您的应用程序启动,还是在您的应用程序启动之前是否正在播放其他应用程序。您可以在OnActivated中获取值...
protected override void OnActivated(object sender, EventArgs args)
{
base.OnActivated(sender, args);
// cache music and trial mode values
Globals.GameHasMusicControl = MediaPlayer.GameHasControl;
}
在整个游戏中使用该值来确定您是否应该播放音乐。