【问题标题】:Custom notification sound no longer working自定义通知声音不再起作用
【发布时间】:2017-07-27 12:45:10
【问题描述】:

我有一个 Windows 服务,它将使用 Apple 的推送通知服务向我们的 iOS 应用程序发送通知。当通知出现在设备上时,我们正在使用自定义通知声音。上周 iOS 10.3.3 更新发布后,我们发现自定义声音不再播放。这是我们发送给 APS 的消息:

{
    {
        "aps": {
            {
                "alert": "Alert message",
                "badge": 5,
                "sound": "mysound.mp3"
            }
        },
        "acme1": "bar",
        "acme2": 42
    }
}

我们的应用没有改变,即使在尚未更新到 iOS 10.3.3 的设备上也不再播放自定义声音,包括无法更新到 iOS 9 以上的设备。

我不确定是否要开始诊断问题;移动应用程序是使用 Cordova 构建的。

【问题讨论】:

  • 声音文件是否保留在设备上?
  • @Shubham 不太清楚你的意思,但我相信音频文件在安装时包含在应用程序中。无论如何,它在一个多星期前就开始工作了,而且我们还没有发布新版本,这让我怀疑苹果方面可能发生了一些变化。

标签: ios cordova audio apple-push-notifications


【解决方案1】:

我很惊讶它居然能在 mp3 文件类型上工作。

根据the docs

您可以将音频数据打包到 aiffwavcaf 文件中。因为它们是由系统声音工具播放的,所以自定义声音必须采用以下音频数据格式之一:

  • 线性
  • PCM
  • MA4 (IMA/ADPCM)
  • 微定律
  • 法律

尝试将其转换为一种受支持的格式和包,它应该会重新开始工作。有关如何执行此操作的详细信息,请参阅文档。

【讨论】:

  • 我同意@Chris Allwein 的观点,您应该尝试使用 wav、aiff 或 caf 文件,但首先要确保应用程序中应该有一个具有提供名称的文件。
  • 显然多年来一直如此。我会尝试一下,因为我相信我们在其他三种格式中拥有相同的声音,所有这些都捆绑到应用程序中。一种是 WAV、IIRC。
【解决方案2】:

iOS 通知自定义声音有效(当应用程序在前台、后台和终止时)

本地和远程通知可以指定在发送通知时播放的自定义警报声音。您可以将音频数据打包到 aiff、wav 或 caf 文件中。因为它们是由系统声音工具播放的,所以自定义声音必须采用以下音频数据格式之一:

  • 线性 PCM
  • MA4 (IMA/ADPCM)
  • 微定律
  • 法律

注意:- 自定义声音在播放时必须不到 30 秒。如果自定义声音超过该限制,则播放默认系统声音

之后你需要在app Payload中设置自定义声音名称:-


     payload
    {
    aps =     {
        alert = "Hello World";
        badge = 1;
        sound = "iosTune.aiff"; // default;
              };
    }

Final:-当在应用程序的任何阶段都会收到通知时,将播放自定义声音而不是默认声音。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-17
  • 2019-05-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多