Iphone 获取IOS5中的当前音量
我需要获取IOS5应用程序下的当前音量。该应用程序应该在电影院中使用,因此我想通知用户,他/她应该调低音量,除非已经调低了音量。试试这个Iphone 获取IOS5中的当前音量,iphone,ios,cocoa-touch,ios5,Iphone,Ios,Cocoa Touch,Ios5,我需要获取IOS5应用程序下的当前音量。该应用程序应该在电影院中使用,因此我想通知用户,他/她应该调低音量,除非已经调低了音量。试试这个 musicPlayer = [[MPMusicPlayerController iPodMusicPlayer]; currentVolume = musicPlayer.volume; 你可以得到这样的音量 -(Float32)audioVolume { Float32 state; UInt32 propertySize = sizeo
musicPlayer = [[MPMusicPlayerController iPodMusicPlayer];
currentVolume = musicPlayer.volume;
你可以得到这样的音量
-(Float32)audioVolume
{
Float32 state;
UInt32 propertySize = sizeof(CFStringRef);
OSStatus n = AudioSessionGetProperty(kAudioSessionProperty_CurrentHardwareOutputVolume, &propertySize, &state);
if( n )
{
// something didn't work...
}
return state;
}
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(volumeChanged:)
name:@"AVSystemController_SystemVolumeDidChangeNotification"
object:nil];
您可以像这样获得系统卷更新
-(Float32)audioVolume
{
Float32 state;
UInt32 propertySize = sizeof(CFStringRef);
OSStatus n = AudioSessionGetProperty(kAudioSessionProperty_CurrentHardwareOutputVolume, &propertySize, &state);
if( n )
{
// something didn't work...
}
return state;
}
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(volumeChanged:)
name:@"AVSystemController_SystemVolumeDidChangeNotification"
object:nil];
如果手机返回空字符串,您可以确定手机是否处于静默模式(如果在模拟器中,这将崩溃,因此编译时保护)
不过,这在iOS 5中不起作用。也是相关的。这看起来很棒,但当设备静音时,我仍然会得到正音量值。看起来静音状态不会影响卷值。是否可以在IOS5下读取静音状态?尝试使用ApplicationMusicLayer而不是IPODMusicLayer,然后检查。。否则jbat100的答案在我看来相当不错。你是在创建自己的音乐播放器对象还是类似的东西。。。你能给我们一些代码吗?我正在创建一个软件,可以显示与正在电影院中播放的电影相关的内容。要求是警告具有取消静音设备的用户他应该将其静音。似乎此解决方案不再有效,因为iOS 7.0:(@property(nonatomic)float volume NS_DEPRECATED_iOS(3_0,7_0);“是否也可以获取有关打开和关闭静音按钮的更新?