我有一项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构建的。
答案 0 :(得分:0)
我很惊讶它曾经使用过mp3文件类型。
根据the docs:
您可以将音频数据打包在 aiff , wav 或 caf 文件中。由于它们由系统声音设备播放,因此自定义声音必须采用以下音频数据格式之一:
- 线性
- PCM
- MA4(IMA / ADPCM)
- μLaw
- ALAW
尝试将其转换为支持的格式和包之一,它应该重新开始工作。有关如何执行此操作的详细信息,请参阅文档。
答案 1 :(得分:0)
本地和远程通知可以指定传递通知时要播放的自定义警报声音。您可以将音频数据打包为aiff,wav或caf文件。由于它们是由系统声音设备播放的,因此自定义声音必须采用以下音频数据格式之一:
注意:- 自定义声音在播放时必须 30秒以内。如果自定义声音超出该限制,则会播放默认系统声音。
此后,您需要在应用程序有效负载中设置自定义声音名称:-
payload
{
aps = {
alert = "Hello World";
badge = 1;
sound = "iosTune.aiff"; // default;
};
}
最终:-:在应用的任何阶段都会收到通知,然后播放自定义声音,而不是默认声音。