我正在使用Xamarin.iOS处理MediaPlayer,单击按钮时无法找到静音的方法,如下所示:
AudioManager amanager = (AudioManager)GetSystemService(Context.AudioService);
amanager.SetStreamVolume(Stream.Music, 0, VolumeNotificationFlags.RemoveSoundAndVibrate);
任何帮助将不胜感激。
答案 0 :(得分:2)
如果您想要静音的声音是您自己的iOS应用程序本身的声音/音乐并且正在播放,您可以使用AVAudioPlayer
,如下所示:
AVAudioPlayer _player;
public void PlayMusic(string file)
{
NSError error;
_player = new AVAudioPlayer(new NSUrl(file + ".mp3"), "mp3", out error);
if (error != null)
{
Debu.WriteLine("Error in PlayTheme, {0}: {1}", file, error.LocalizedDescription);
return;
}
_player.Volume = 0.6f;
_player.NumberOfLoops = -1;
_player.Play();
}
public void StopMusic()
{
if (_player != null)
{
_player.Stop();
_player.Dispose();
_player = null;
}
}
此外,根据您希望如何控制音频,您可以使用MPMusicPlayerController.ApplicationMusicPlayer
代替。这是关于它的Apple doc。
但是,如果您希望通过使用私有API来静音iOS系统音频本身technically possible,但通过这样做,我不认为Apple会在您尝试将其发布时批准您的应用应用程序商店。