有没有办法设置AVAudioSession outputVolume?
self.audioSession = AVAudioSession.sharedInstance()
self.audioSession.setActive(true, error: nil)
self.audioSession.addObserver(self, forKeyPath: "outputVolume", options: NSKeyValueObservingOptions.New, context: nil)
self.audioSession.outputVolume
目前我可以访问outputVolume,但我遇到了设置它的方法的麻烦。
谢谢!
答案 0 :(得分:3)
outputVolume
属性是只读的。这是因为Apple坚信,如果应用程序意外修改音量超出用户控制范围,将会破坏良好的用户体验。
来自AVAudioSession docs:
系统范围的输出量只能由用户直接设置;要在您的应用中提供音量控制,请使用MPVolumeView类
所以这是你唯一的(简单)选择...
MPVolumeView *myVolumeView =
[[MPVolumeView alloc] initWithFrame:frame];
[self.view addSubview: myVolumeView];
答案 1 :(得分:0)
我可以在iOS 8上使用以下内容更改主音量
#import <MediaPlayer/MediaPlayer.h>
[[MPMusicPlayerController applicationMusicPlayer] setVolume:0.0];
[[MPMusicPlayerController iPodMusicPlayer] setVolume:0.0];
获取信息,代码通过Cordova插件调用。这会影响主卷(设备卷弹出窗口在调用代码时显示新卷)