gpt4 book ai didi

ios - 麦克风权限未按预期工作

转载 作者:行者123 更新时间:2023-12-03 03:53:25 25 4
gpt4 key购买 nike

我正在开发一个需要麦克风访问/录音的应用程序。到目前为止,我认为我的权限处理正在工作,但我的 TestFlight beta 测试人员无法使用麦克风功能,即使它在模拟器和 iOS7 测试设备中工作。

这是我的权限代码:

AVAudioSession *session = [AVAudioSession sharedInstance];
if ([session respondsToSelector:@selector(requestRecordPermission:)]) {
[session performSelector:@selector(requestRecordPermission:) withObject:^(BOOL granted) {
if (granted) {
//granted
}
else {
//not granted
}
}
];
}else{
//iOS6 seems to be missing this feature -> always available
}

即使在模拟器上重置隐私和位置,我也无法重现提示,这意味着提示永远不会显示。尽管如此,我可以在模拟器上使用麦克风,就好像获得了许可一样。

一件重要的事情是,该应用程序没有作为麦克风访问应用程序列在“隐私”下(显然应该如此)。

如果我打印 iOS8 标志 [AvAudioSession sharedInstance].recordPermission,即使在上述权限请求完成并授予后,它也始终是 AVAudioSessionRecordPermissionUnknowned

一小段测试代码:

[[AVAudioSession sharedInstance] requestRecordPermission:^(BOOL granted) {
NSLog(@"GRANTED: %i", granted);
}];
NSLog(@"RECORD PERMISSION: %i", [AVAudioSession sharedInstance].recordPermission == AVAudioSessionRecordPermissionUndetermined?1:0);

为我生成输出:“GRANTED: 1”“RECORD PERMISSION: 1”,这应该是不可能的,对吧?

这使得它目前无法在 iOS8 下使用我的应用程序。

最佳答案

模拟器不会对麦克风访问进行权限提示,也不会在“隐私”下列出它们。它只是允许录音工作。恐怕您必须在真实设备上进行测试。

相关答案:requestRecordPermission does nothing

关于ios - 麦克风权限未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27845349/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com