在接收推送通知时在后台调用音频
Posted
技术标签:
【中文标题】在接收推送通知时在后台调用音频【英文标题】:Calling Audio in background on receiving Push Notification 【发布时间】:2017-05-05 09:38:22 【问题描述】:我已经在 didReceiveRemoteNotification fetchCompletionHandler 上实现了 AVAudioPlayer,它在接收推送通知时播放音频。
但是我的应用被拒绝说
您的应用在 UIBackgroundModes 键中声明支持音频 您的 Info.plist 但不包含需要持久性的功能 音频。
后续步骤
音频键适用于在后台向用户提供可听内容的应用,例如音乐播放器或 流式音频应用程序。请修改您的应用程序以提供可听的 当应用程序在后台时向用户提供内容或删除 UIBackgroundModes 键中的“音频”设置。
我发现苹果不允许这样做..默认情况下,它会在收到通知时允许 30 秒播放声音..我需要连续播放声音,直到用户打开应用程序。他们有什么解决方案吗?
【问题讨论】:
不,没有解决方案可以满足您的要求,除了设置几个重复的本地通知以引起用户注意。但这也可能会被拒绝,因为 Apple 不允许此类试图引起用户注意的应用程序。 这不是强制性的,用户可以在应用程序的设置中停止它 好吧,没有办法做到这一点,音频背景键适用于播放音频的应用程序,例如网络广播音乐流应用程序。但是您不能在收到推送通知后使用它来播放音频。因此,您将需要使用多个本地通知,这些通知会在您收到推送通知时回放并安排它们。 苹果团队是否有机会接受本地通知 可能。你永远无法分辨 【参考方案1】:您不需要使用背景音频播放。
要在后台播放或执行任何任务,您可以使用带有过期处理程序的后台任务:https://www.raywenderlich.com/143128/background-modes-tutorial-getting-started
为本地通知实现 UNUserNotifications: https://useyourloaf.com/blog/local-notifications-with-ios-10/
使用 NSTimer 执行声音任务并根据您的要求显示 30 秒或 1 分钟的本地通知。
https://github.com/TUNER88/iOSSystemSoundsLibrary:用于您在后台播放的系统声音
【讨论】:
以上是关于在接收推送通知时在后台调用音频的主要内容,如果未能解决你的问题,请参考以下文章