【问题标题】:Mute local notification sound when is app already running应用程序已运行时静音本地通知声音
【发布时间】:2012-08-05 11:50:01
【问题描述】:

我正在开发一个警报应用程序。当应用程序在后台时,本地通知会通知用户警报正在响起并播放声音。但是当应用程序已经在前台时,我不希望播放通知声音,而是播放自定义声音。我找不到如何使通知声音静音,因此两种声音同时播放。有什么想法吗?

更新:我重启了我的设备,问题就解决了。这可能是一个 iOS 错误。

【问题讨论】:

    标签: iphone objective-c ios xcode cocoa


    【解决方案1】:

    当您的应用打开并在前台运行时,默认行为是不播放声音,并且用户不会收到来自操作系统的任何警报/横幅。您可以通过以下方法接收通知(在您的 AppDelegate 类中):

    - (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
    {
        NSLog(@"Do something");
    }
    

    你可以从那里触发任何其他方法。

    来自documentation on UILocalNotification

    如果应用程序在系统交付时最重要且可见 通知,不显示警报,没有标记图标,也没有声音 玩过的。但是, application:didReceiveLocalNotification: 是 如果应用程序委托实现它,则调用它。这 UILocalNotification 实例被传递到这个方法中,并且 委托可以检查其属性或从 用户信息字典。

    【讨论】:

    • 我不知道我做了什么更改,但现在我的通知声音会在通知触发时播放。我不想取消通知。我只是想阻止它播放声音
    • 是的。它不习惯。但现在它做到了。我找不到如何处理它。
    • 检查我刚刚所做的编辑。收到通知声音这很奇怪...
    猜你喜欢
    • 2013-09-15
    • 1970-01-01
    • 1970-01-01
    • 2021-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多