iOS推送通知 - 如何指定没有声音的警报和徽章?

时间:2012-03-23 15:08:05

标签: ios iphone ipad apple-push-notifications

我想知道如何发送没有声音的推送通知。

来自Apple's website

  

此文件中的声音作为警报播放。如果是声音文件   不存在或默认值被指定为默认警报值   声音播放。

这表示如果我对声音文件使用“default”,或者如果我指定一个不存在的声音文件,它将播放默认的警报声。

但它确实具体说明了如何没有声音......如果我只是在有效载荷中不包含声音(将其留下),这是否意味着没有播放声音?

由于

3 个答案:

答案 0 :(得分:4)

  

如果我只是没有在有效载荷中包含声音(将其留下),这是否意味着没有播放声音?

没错。只是不要在有效负载中包含sound。或者,如果您永远不想播放声音,甚至不要注册声音通知类型。

答案 1 :(得分:0)

您应该将应用程序配置为接收您希望接受的PN类型,有三个选项:

  1. 显示简短短信
  2. 播放短暂的声音
  3. 在应用程序图标
  4. 的徽章中设置一个数字

    你可以在你认为合适的任何组合中使用这三个,现在你需要在app中做的就是注册ForRemoteNotificationTypes,如下所示:

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
    {
        self.window.rootViewController = self.viewController;
        [self.window makeKeyAndVisible];
     
        // Let the device know we want to receive push notifications
        [[UIApplication sharedApplication] registerForRemoteNotificationTypes:
            (UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)];
     
        return YES;
    }
    

    在您的案例中选择适当的选项,一旦应用程序启动并注册推送通知,将弹出一条消息,询问用户是否接受推送通知。

答案 2 :(得分:-1)

在注册通知时,你会做这样的事我猜?

[application registerForRemoteNotificationTypes:UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound]; 

只是不包含UIRemoteNotificationTypeSound。