自 iOS 7 更新以来,录音应用程序发生了一些变化。我有一个曾经在 iOS 5 和 6 上运行的应用程序,但是当我尝试在 iOS 7 上运行它时 - 录制没有响应。
我检查了互联网,发现有一种新方法需要调用。我试图将此代码放在 viewDidAppear 中:
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7) {
if([[AVAudioSession sharedInstance] respondsToSelector:@selector(requestRecordPermission:)])
{
[[AVAudioSession sharedInstance] requestRecordPermission:^(BOOL granted) {
NSLog(@"permission : %d", granted);
}];
}
}
'granted' 始终为 1,尽管我没有授予任何权限,也没有看到任何请求弹出窗口。
顺便说一句,我正在尝试使用 xcode 4.6.3 来处理这个问题。我使用 requestRecordPermission 方法为 AVAudioSession 创建了一个类别,因为此方法仅在 iOS 7 中可用。
谢谢。