iOS本地推送通知覆盖静音/静音模式

Ale*_*man 6 notifications push local silent ios

我目前正在开发一个iOS项目,要求我向有声音的用户发送本地推送通知.问题是我希望即使设备静音或处于静音模式也能播放声音,但我不确定这是否可行.

有一些类似的问题,但没有一个像这样成功回答:iPhone - 是否可以覆盖静音模式或通过推送通知发出递归警报声?

免责声明:我知道这不是一个应用程序的理想功能,它可能是从App Store拒绝的原因.

xia*_*lin 2

我刚刚在搜索与推送通知相关的内容时发现了这个问题。

您可以通过监听推送通知并在收到推送通知时开始在应用程序内播放声音来实现

1) 对于iOS7及以上版本,即使用户没有打开应用程序,也可以使用此方法获取推送通知

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult result))completionHandler;
Run Code Online (Sandbox Code Playgroud)

2)在该方法内,您可以让您的应用程序开始播放声音文件。您可能需要一些额外的工作来配置 AVAudioSession,以便即使设备处于静音模式时也可以播放声音。您可以查看文档以获取更多详细信息 - 适当处理音频需要一些时间。您必须考虑其他应用程序已经在播放声音或来自不同通道(例如扬声器、耳机等)的声音输出的情况。

  • 不幸的是,当用户通过从应用程序切换器向上滑动来强制关闭应用程序时,这不起作用。该方法未被调用。 (2认同)