1

使用 Backendless 推送通知,我的设备成功接收到它们。但是当我尝试将消息的“ios-sound”参数设置为我添加到项目中的 mp3 时,它不会播放任何声音:

在此处输入图像描述

Backendless 文档中,它说设置“ios-sound”执行以下操作:

设置要在设备上播放的声音通知的 URL 或要播放的声音的字节数组。

我无法弄清楚我做错了什么。唔...

4

2 回答 2

2

除了我已经在做的 registerForRemoteNotifications() 之外,还通过调用 registerUserNotificationSettings 解决了这个问题。

  func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    backendless.initApp(APP_ID, secret:SECRET_KEY, version:VERSION_NUM)

    //NEEDED TO DO THE FOLLOWING TWO LINES
    let settings = UIUserNotificationSettings(forTypes: [.Alert, .Badge, .Sound], categories: nil)
    UIApplication.sharedApplication().registerUserNotificationSettings(settings)

    UIApplication.sharedApplication().registerForRemoteNotifications()

    return true
  }

我之前没有调用它的原因是因为Backendless Docs说简单地调用 .registerForRemoteNotifications() 涵盖警报、徽章和声音。然而,这似乎是不正确的。

于 2016-03-04T04:56:15.587 回答
2

如果您在您的设备上成功收到通知,那么您的音频文件可能很大

自定义声音在播放时必须少于 30 秒。如果自定义声音超过该限制,则会播放默认系统声音。因此请确保您的自定义声音小于 30 秒。

您的音频数据必须在 aiff、wav 或 caf 文件中。

服务器上的文件名和捆绑中的文件应该同名。只需将您的 mp3 转换为给定格式之一,然后仅在应用程序处于非活动状态时播放声音。

于 2016-03-04T03:51:16.077 回答