很抱歉问这个问题,这里再次讨论了很多次。但是没有一个答案对我有帮助。我只需要在 a 中输入一些简单的代码viewDidLoad
来检查耳机是否已插入。(如果他们不是我想弹出简单的消息,但这不是我要问的怎么做。)有什么帮助吗?
问问题
1868 次
2 回答
9
这应该可以实现您想要的(iOS 6+ 兼容)
- (BOOL)areHeadphonesPluggedIn {
NSArray *availableOutputs = [[AVAudioSession sharedInstance] currentRoute].outputs;
for (AVAudioSessionPortDescription *portDescription in availableOutputs) {
if ([portDescription.portType isEqualToString:AVAudioSessionPortHeadphones]) {
return YES;
}
}
return NO;
}
于 2013-10-19T19:27:00.247 回答
2
这是 Gabriele Petronella 编写的代码的 Swift 1.2 版本
//This method checks if headphones are plugged in.
func areHeadphonesPluggedIn()->Bool
{
var availableOutputs = AVAudioSession.sharedInstance().currentRoute.outputs
for portDescription in availableOutputs
{
if portDescription.portType == AVAudioSessionPortHeadphones
{
return true
}
}
return false
}
于 2015-06-17T17:37:05.140 回答