首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >IOS "Audio“后台模式

IOS "Audio“后台模式
EN

Stack Overflow用户
提问于 2016-03-12 03:47:33
回答 2查看 5K关注 0票数 3

我有一个简短的问题,有没有人知道在iOS 9和更高版本中,除了使用“音频”后台模式之外,还有其他方法可以让应用程序在后台访问麦克风?

此外,应用程序也没有录制音频,它只是为了尝试识别通过麦克风接收到的音频而进行处理,并向用户提供通知。

我问这个问题,因为我在应用程序的版本1中使用了“音频背景模式”,并在版本2 (更新)中继续使用“音频背景模式”,但当我尝试将版本2提交到应用程序商店时,他们拒绝了它,并解释说应用程序版本2不符合2.16,因为录制音频不是音频背景模式的正确使用,并且我没有录制音频。

提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2016-03-12 04:10:13

如果不为UIBackgroundModes键添加'audio‘值,就无法实现您想要的功能。媒体框架使用此值来防止应用程序在后台运行时被挂起。

根据你所说的,你的应用程序属于:Audio recording apps类别。所以,苹果没有理由拒绝你的应用。尝试联系应用程序审查团队或在App Review Information的iTunes连接中有一个Notes字段,您可以在其中提供审查团队使用的其他信息,并在那里编写一些关于您的应用程序如何在后台工作的解释。

票数 1
EN

Stack Overflow用户

发布于 2016-03-12 04:19:25

你是说你的应用程序可以在后台访问麦克风,对吗?系统不知道你是在录制音频还是只是在处理音频,这并不重要,因为你可以在后台访问麦克风已经足够了。

你的应用程序必须明确地告诉系统它将在后台使用一些功能。为什么?

声明服务让系统知道您使用了哪些服务,但在某些情况下,实际上是系统框架阻止了您的应用程序被挂起。https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html#//apple_ref/doc/uid/TP40007072-CH4-SW23

也就是说,如果你的应用程序没有声明它将在后台使用麦克风,系统会简单地暂停你的应用程序,因为它认为你的应用程序没有必要处于活动状态。如果你的应用程序在当前状态下进入app Store,你的应用程序可能会在后台挂起(实际上它不应该挂起),这会导致糟糕的用户体验。所以,我认为,如果不明确声明你的应用程序在后台使用麦克风,你是不可能进入App Store的。

你怎么能这样做呢?

对某些类型的后台执行的支持必须由使用它们的应用程序提前声明。在Xcode5和更高版本中,您可以从项目设置的Capabilities选项卡中声明应用程序支持的背景模式。启用后台模式选项会将UIBackgroundModes密钥添加到应用程序的Info.plist文件中。选中一个或多个复选框可将相应的背景模式值添加到该键。表3-1列出了你可以指定的背景模式,以及Xcode在你的应用程序的Info.plist文件中分配给UIBackgroundModes键的值。

我希望这能回答你的问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35948665

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档