繁体   English   中英

推送到达时未播放自定义声音

[英]Custom sound not played when push arrives

我已经为我的应用添加了自定义声音,但是当推送到达时它不会被播放。 我不知道为什么不,我看不出与我所做的有什么不同,而且涉及的步骤很少。

1)声音文件是可听的有效音频文件(我甚至可以在Xcode中单击并播放它)。

2)声音文件出现在应用程序包中:

在此输入图像描述

3)声音文件名在push有效载荷中使用确切的名称和大小写指定:

{"aps":{"alert":"Test","badge":0,"sound":"PyngNotification.caf"}}

4)我已尝试在没有扩展名的情况下指定名称,就像“PyngNotification”一样。

5)推送到达并显示,但不播放自定义声音。

6)无论推送内容是否包含“PyngNotification.caf”,“default”或“”声音,手机都会产生相同的噪音。 它是一种短暂的嗡嗡声。

7)手机上没有禁用声音,也没有推送应用程序。

8)该应用程序正在注册UIRemoteNotificationTypeSound(如果是iOS8)。 (如果通过控制面板查看,应用程序会将声音显示为允许的类型之一)。

9)我有多个手机,一个是iOS8,一个是iOS7。 这些声音都没有播放。

10)声音不到30秒。

11)声音是ma4并使用afconvert转换为caf。

我看不到任何我遗漏的步骤,也没有看到任何不正确的步骤。 有人有什么想法吗?

点击在Xcode中无效的声音文件。 查看右侧的文件检查器,确保选中“Target Membership”选项。

除了后台模式设置外,您提供的步骤几乎就是我所拥有的一切。 我必须从功能>背景模式中检查“音频,Airplay和画中画”模式。 希望能帮助到你。

加。 到Apple的文档https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/IPhoneOSClientImp.html#//apple_ref/doc/uid/TP40008194-CH103-SW6

准备自定义警报声音

对于iOS中的远程通知,您可以指定iOS在为应用程序提供本地或远程通知时播放的自定义声音。 声音文件必须位于客户端应用程序的主包中。

自定义警报声音由iOS系统声音设备播放,因此它们必须采用以下音频数据格式之一:

Linear PCM
MA4 (IMA/ADPCM)
µLaw
aLaw

您可以将音频数据打包在aiff,wav或caf文件中。 然后,在Xcode中,将声音文件作为应用程序包的非本地化资源添加到项目中。

您可以使用afconvert工具转换声音。 例如,要将16位线性PCM系统声音Submarine.aiff转换为CAF文件中的IMA4音频,请在终端应用中使用以下命令:

afconvert /System/Library/Sounds/Submarine.aiff~ / Desktop / sub.caf -d ima4 -f caff -v

您可以通过在QuickTime Player中打开声音并从“电影”菜单中选择“显示电影检查器”来检查声音以确定其数据格式。

播放时,自定义声音必须低于30秒。 如果自定义声音超过该限制,则会播放默认系统声音。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM