iOS开发之极光推送自定义推送声音

原创 2016年06月01日 10:17:18

项目中用到了自定义推送声音,于是就看了下官方文档。 官方文档上说:

Preparing Custom Alert Sounds

For remote notifications in iOS, you can specify a custom sound that iOS plays when it presents a local or remote notification for an app. The sound files can be in the main bundle of the client app or in the Library/Sounds folder of the app’s data container.

Custom alert sounds are played by the iOS system-sound facility, so they must be in one of the following audio data formats:

  • Linear PCM

  • MA4 (IMA/ADPCM)

  • µLaw

  • aLaw

You can package the audio data in an aiffwav, or caf file. Then, in Xcode, add the sound file to your project as a nonlocalized resource of the app bundle or to the Library/Sounds folder of your data container.

You can use the afconvert tool to convert sounds. For example, to convert the 16-bit linear PCM system sound Submarine.aiff to IMA4 audio in a CAF file, use the following command in the Terminal app:

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

You can inspect a sound to determine its data format by opening it in QuickTime Player and choosing Show Movie Inspector from the Movie menu.

Custom sounds must be under 30 seconds when played. If a custom sound is over that limit, the default system sound is played instead.


以上实际上就是说了

由于自定义通知声音还是由 iOS 系统来播放的,所以对音频数据格式有限制,可以是如下四种之一:

  1. Linear PCM
  2. MA4 (IMA/ADPCM)
  3. µLaw
  4. aLaw

对应音频文件格式是 aiffwavcaf 文件,文件也必须放到 app 的 mainBundle 目录中。

可以使用 afconvert 工具来处理音频文件格式,在终端中敲入如下命令就可以将一个 mp3 文件转换成 caf 文件:

afconvert /System/Library/Sounds/Submarine.aiff ~/Desktop/test.caf -d ima4 -f caff -v
自定义通知声音的播放时间必须在 30s 内,如果超过这个限制,则将用系统默认通知声音替代。

转换完成后就可以将 test.caf这个文件拖入 Xcode 工程中,编译运行项目在真机上。

然后在极光发送推送通知时,只需配置 sound 字段的值为导入到工程中的音频文件名,这里即就是 test.caf。如图所示。


测试,收到推送时,通知声音就是我们自定义的声音了。



极光推送JPush---自定义提示音

极光推送提供三种方法实现Notification通知 1. ① 三方开发平台发送普通消息,客户端设置PushNotificationBuilder,实现基础的Notification通知 ...
  • black_bread
  • black_bread
  • 2017年03月06日 15:09
  • 6068

iOS极光推送之自定义消息

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launc...
  • mazegong
  • mazegong
  • 2016年04月27日 16:35
  • 5616

iOS极光推送(接收后台消息和自定义消息)

1.极光推送包括:APNs推送,JPush应用内消息。JPush 代理开发者的应用(需要基于开发者提供的应用证书),向苹果 APNs 服务器推送。由 APNs Server 推送到 iOS 设备上。J...
  • shengdaVolleyball
  • shengdaVolleyball
  • 2016年07月29日 18:40
  • 5671

iOS集成极光推送 通知 和 自定义消息

支持的版本 r1.2.5 以后。 功能说明 只有在前端运行的时候才能收到自定义消息的推送。 从jpush服务器获取用户推送的自定义消息的内容、标题、附件字段等。 实现方法...
  • qq_27247497
  • qq_27247497
  • 2016年06月07日 15:47
  • 8775

ios极光推送的自定义消息和registerID的获取

(BOOL)application:(UIApplication )application didFinishLaunchingWithOptions:(NSDictionary )launchOpt...
  • qq_31927785
  • qq_31927785
  • 2016年08月10日 13:09
  • 4906

第一篇博客:极光推送以及自定义推送声音

极光注册就不说了,首先配置App的build.grandle 在defaultConfig里粘贴一下内容appkey为我在极光注册之后的Appkey 然后配置AndroidManife...
  • qq_32213027
  • qq_32213027
  • 2018年01月09日 15:08
  • 27

iOS开发 极光推送收到通知后跳转到指定页面

iOS在开放中,会使用到极光推送,然后收到推送时,往往需要跳转指定的界面,而跳转到指定界面时,又分为程序未杀死情况下的跳转和程序已杀死的跳转,即离线状况下的跳转: 当程序未杀死状况下的条状方...
  • zhaofahseng
  • zhaofahseng
  • 2017年05月25日 10:22
  • 1995

iOS开发(第三方使用)——极光推送SDK接入

pod ‘JPush’ 添加Framework CFNetwork.framework CoreFoundation.framework CoreTelephony.framework Sys...
  • liumude123
  • liumude123
  • 2016年09月06日 17:18
  • 266

IOS开发使用极光平台进行远程推送

自己在做项目的时候想给程序增加个推送功能,而自己又没有服务器,所以使用了极光推送平台。下面介绍一下,使用极光进行程序推送的使用步骤。 1.https://www.jpush.cn/common/...
  • litong19930321
  • litong19930321
  • 2015年03月13日 14:27
  • 1042

iOS开发-极光推送SDK使用笔记

推送作为一个产品必备功能,越来越得到所有人的重用,市面上做推送的第三方公司也有很多,像个推,百度,甚至友盟也出了推送功能。用什么不是我们能决定的,而是上级或产品决定的,所以我负责的项目用了极光推送,我...
  • James_1_2_1_1
  • James_1_2_1_1
  • 2017年06月15日 14:32
  • 164
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:iOS开发之极光推送自定义推送声音
举报原因:
原因补充:

(最多只允许输入30个字)