IOS推送声音设置
来源:互联网 发布:网络知识大赛 编辑:程序博客网 时间:2024/06/09 21:48
项目中遇到需要自定义通知声音的需求,以前没做过,就查了下官方文档,就像文档上说的,实现起来确实挺简单,就整理下当做备忘吧。
关于推送,官方文档、各种第三方推送文档都很全,就跳过了。
由于自定义通知声音还是由 iOS 系统来播放的,所以对音频数据格式有限制,可以是如下:
对应音频文件格式是 aiff
,wav
,caf
文件,文件也必须放到 app 的目录中。
自定义通知声音的播放时间必须在 30s 内,如果超过这个限制,则将用系统默认通知声音替代。
可以使用 afconvert
工具来处理音频文件格式,在终端中敲入如下命令就可以将一个 mp3
文件转换成 caf
文件:
afconvert unbelievable.mp3 unbelievable.caf -d ima4 -f caff -v
转换完成后就可以将 unbelievable.caf
这个文件拖入 Xcode 工程中,编译运行项目在真机上。可以通过iTunes 把MP3格式转换成WAV格式。
本地推送 和 远程推送对自定义声音的处理是一样的,主要是:
aps = {
alert = "推送信息";//推送显示的问题信息在这里
badge = 1;//app的icon右上角的推送数字 在这里设置
sound = "XXX.caf";//可以为空,为空就是默认的声音
};
noti.soundName =UILocalNotificationDefaultSoundName;// 系统默认
noti.soundName = @"unbelievable.caf";// 自定义声音名称
本地推送:
/** * 触发时间 */ // 设置 10秒之后 NSDate *date = [NSDate dateWithTimeIntervalSinceNow:10]; // // 设置指定时间// NSDateFormatter *formatter = [[NSDateFormatter alloc] init];// [formatter setDateFormat:@"HH:mm"];// NSDate *now = [formatter dateFromString:@"13:42"];// 触发通知时间 // 一个本地推送 UILocalNotification *noti = [[UILocalNotification alloc] init]; if (noti) { //设置推送时间 noti.fireDate = date; //设置时区 noti.timeZone = [NSTimeZone defaultTimeZone]; // 设置重复间隔 noti.repeatInterval = NSWeekCalendarUnit; // 推送声音 noti.soundName = @"unbelievable.caf";//UILocalNotificationDefaultSoundName; // 内容 noti.alertBody = @"推送内容"; // 显示在icon 上的红色圈中的数字 noti.applicationIconBadgeNumber = 1; // 设置info方便在之后 需要撤销的时候使用 NSDictionary *infoDic = [NSDictionary dictionaryWithObject:@"name" forKey:@"key"]; noti.userInfo = infoDic; // 添加推送到UIApplication [[UIApplication sharedApplication] scheduleLocalNotification:noti]; }
远程推送
服务器返回的数据如下:
userInfo默认包含以下内容:
aps = {
alert = "推送信息";//推送显示的问题信息在这里
badge = 1;//app的icon右上角的推送数字 在这里设置
sound = "XXX.caf";//可以为空,为空就是默认的声音
};
sound 对应的 value 赋值到 noti.soundName 上面就行了
同学遇到的问题:
问题1:我已经在通知里面设定了自定义声音为啥还是默认声音那?
noti.soundName = @"unbelievable.caf";// 自定义声音名称
解答:1、声音太长超过30秒,
2、看看你要设置的音频有没有加到项目中,你可以到Build Phases/Copy Bundle Resources 看看。
1 0
- IOS推送声音设置
- 关于IOS推送声音的设置
- 设置推送自定义声音
- iOS推送定制声音
- IOS推送声音
- ios 自定义推送声音
- iOS推送定制声音
- iOS 本地推送以及自定义推送声音
- ios 本地推送的声音、震动
- iOS 收到推送后,播放声音
- iOS 极光推送没有声音怎么办?
- iOS开发之极光推送自定义推送声音
- ios推送通知设置
- iOS 推送证书设置
- IOS推送证书设置
- iOS开发 iOS10推送设置
- iOS 极光推送设置别名
- 1.iOS中的系统通知 自定义推送声音
- 男闺蜜APP辅助刷话题应用之闺蜜刷
- 修改linux最大文件句柄数
- linux VSFTP配置
- Redis与Memcached的区别
- HDU 4180 RealPhobia(扩展欧几里得)
- IOS推送声音设置
- Android 编码规范
- iOS中的lauchOptions
- python数据类型转换 python字符串转浮点数 python字符串转float
- Android多线程机制详细解析
- Sping+ActiveMQ整合
- Spring4+Hibernate4整合
- 关于使用stm8单片机的“外部计数”TIMx_ETR测脉冲的软件配置问题!
- 官方实现下拉刷新