移植到 iOS 7 的应用程序现在请求麦克风访问权限

Posted

技术标签:

【中文标题】移植到 iOS 7 的应用程序现在请求麦克风访问权限【英文标题】:App ported to iOS 7 now requests microphone access 【发布时间】:2013-11-03 13:04:41 【问题描述】:

我们几乎完成了将应用程序移植到 ios7 的工作,但我们遇到了一个问题,即 AVPlayer 在 iPhone 上默认播放到接收器(静音扬声器)而不是常规扬声器。一个解决方案似乎正在使用

AVAudioSession* session = [AVAudioSession sharedInstance];
[session setCategory:AVAudioSessionCategoryPlayback ...];

然而,这在 iOS7 上会弹出一个对话框,请求麦克风权限。为什么?我怎样才能避免这种情况,因为该应用程序不记录任何内容?我们正在使用 AVPlayer 进行播放,并且还具有背景音频权限。

【问题讨论】:

这个问题的标题是“iOS 7 上的音频播放现在请求麦克风访问”吗? 我在 1 个月前发布了这个问题,但仍然没有答案:/ ... ***.com/questions/18916044/… 【参考方案1】:

您是否尝试过覆盖音频会话的输出死记硬背?当声音在 iPod 上的扬声器上播放但在 iPhone 上的手机扬声器上播放时,我在 iOS 6 上遇到了类似的问题。

UInt32 audioRoute = kAudioSessionOverrideAudioRoute_Speaker;
AudioSessionSetProperty(kAudioSessionProperty_OverrideAudioRoute, sizeof(UInt32), &audioRouteOverride);

【讨论】:

它说函数AudioSessionSetProperty在iOS7中被弃用了 但它仍然要求 iOS7 和 iPhone 4 上的麦克风权限,所以这不是原因 我的错,没有看到改变。也许这会有所帮助? ***.com/questions/18807157/… 我使用的几乎完全一样,声音确实会传到扬声器,但应用程序要求麦克风许可(这就是这个问题的重点)

以上是关于移植到 iOS 7 的应用程序现在请求麦克风访问权限的主要内容,如果未能解决你的问题,请参考以下文章

在 Mojave 上更新到 Xcode 10.1,现在我的应用程序总是要求使用麦克风

升级iOS10之后调用摄像头/麦克风等硬件程序崩溃闪退的问题

Flutter插件开发和iOS原生代码:避免应用启动时的权限请求?

iOS 硬件授权检测:定位服务通讯录日历提醒事项照片蓝牙共享麦克风相机等

iOS 10对隐私权限的管理(必须要改否则会crash)

使用 xcode 5 (iOS 7 sdk) 构建 iOS 7 UI