如何获得与 Apple 推送通知一起播放的自定义声音?

发布于 2024-08-20 02:26:27 字数 876 浏览 4 评论 0 原文

我正在尝试在发送 Apple 推送通知时播放自定义声音。显示弹出消息,徽章也会更新,但我总是播放默认的 iPhone 声音,而不是我的自定义声音。

这是我发送的 JSON 数据:

{"aps": {"sound": "sound.caf", "badge": 2, "alert": "设备注册成功"}}

我的 sound.caf 文件位于 Xcode 项目的顶层,它肯定会出现在生成的 .app 中(由 Finder 中的“查看包内容”确认)。

声音文件在我的 Mac 上播放良好。最初我尝试了 .caf、.m4r 和 .wav 文件,但都无法播放。我还尝试使用 Urban Airship 示例项目中的 .caf 文件之一(我我非常有信心一定会起作用,但不可否认的是,我自己还没有尝试过),但这也不起作用。

Apple 文档定义了可接受的编码和文件格式(.wav、.aiff 或 .caf)。

我尝试过非常短的声音文件以及较长的声音文件(以确保我低于未记录的 30 秒限制)。

有人有其他提示/建议供我尝试吗?

I am trying to get a custom sound to play when my Apple push notification is delivered. The popup message displays, and the badge updates too, but I always get the default iPhone sound playing instead of my custom sound.

Here's the JSON data I am sending:

{"aps": {"sound": "sound.caf", "badge": 2, "alert": "Successfully registered device"}}

My sound.caf file is at the top level of my Xcode project, and it definitely appears in the resulting .app (as confirmed by 'view package contents' in Finder).

The sound file plays fine on my Mac. Initially I tried .caf, .m4r and .wav files, but none would play. I have also tried using one of the .caf files from an Urban Airship sample project (which I'm pretty confident must work, but admittedly I haven't tried it myself), but that didn't work either.

The Apple docs define the accepted encodings and file formats (.wav, .aiff or .caf).

I've tried very short sound files as well as longer ones (to be sure I am underneath the undocumented 30 second limit).

Has anybody got any other hints/suggestions for me to try?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

别忘他 2024-08-27 02:26:27

我的问题是我实际上并没有更新我的测试 iPhone 上的应用程序。我正在更新 iTunes 中的版本,但我没有增加“捆绑版本”,因此 iTunes 没有将新应用程序推送到手机。

为确保更新的应用程序已复制到手机,请仔细查看 iTunes 状态消息。应该说:

更新“设备”上的应用程序
安装“应用程序”

如果有疑问,只需从设备中删除现有应用程序即可。

My problem was that I wasn't actually updating the application on my test iPhone. I was updating the version in iTunes, but I hadn't incremented the "Bundle version", so iTunes wasn't pushing the new application to the phone.

To be sure your updated application is being copied to the phone, watch the iTunes status message carefully. It should say:

Updating applications on 'device'
Installing 'application'

If in doubt just delete the existing app from the device.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文