IOS8 通知中心(Notification Center)新特性
2014-09-23 15:29
239 查看
转载自 http://blog.csdn.net/jinkaiouyang/article/details/30029441 O(∩_∩)O谢谢
苹果keynote展示push通知的一些优化,特别的允许用户能够直接在push上进行交互,这么牛逼的功能,当然第一时间研究。
下面看看具体的产品细节和技术实现:
产品细节:
以下都是使用本地push测试的:(离线push效果一样)
1、状态栏、锁屏状态下和通知中心中的效果如下:(这里最多只能设置两个按键)
2、通知展示设置为Alert模式时,点击Options,会弹出操作选项如下:( 除去launch和close,这里最多能够设置四个选项)
Apple只提供了两种按钮点击后的响应模式:
1、 点击后应用在后台被唤醒 像赞这种轻操作则可以使用这种模式
2、 点击后应用被唤醒到前台 评论回复这些需要用户进一步操作的,适合这种情况。
在WWDC keynote我们看到的短信push演示视频中,收到短信push后能直接播放语音,且能够在当前屏幕直接录音回复的高大上操作,Apple还是木有开放给普通应用使用。(目前在API文档中,只提供了上述的两种操作模式)
技术实现细节:
一、注册User Notification
1、注册API改变
原来注册离线push的API
- (void)registerForRemoteNotificationTypes:(UIRemoteNotificationType)types
已经废弃。
转为使用:
- (void)registerForRemoteNotificationsNS_AVAILABLE_IOS(8_0);
2、增加注册UserNotification (用户可操作的push)的API,用于注册PUSH中展示的按钮和按钮响应事件。
3、增加注册UserNotification成功的回调。原来注册离线成功和失败的回调没有改变
二、设置push中的操作按钮信息
1、注册单个按钮的title、identifier和按钮模式等信息
按钮的activationMode有以下两种模式:
UIUserNotificationActivationModeForeground:点击按钮后,会呼起APP
UIUserNotificationActivationModeBackground:点击按钮后,APP在后台运行
2、多个按钮组合成一个Category。用于在一条push中展示多个操作按钮。Category也有identifier,可以注册多个Category,不同的push类型可以使用不同的Category。实现不同push类型中展示不同操作按钮。
每种Category的按钮有两种展示情况:
一个是默认模式(对于Alert模式时,弹出的操作选项,最多四个按钮)
一个是最少展示模式(对应状态栏、锁屏状态下和通知中心中展示的按钮,最多两个按钮)。
3、注册UserNotification时,设置NotificationType和Categories
NotificationType 包括应用图标上的数字、push声音、和push弹框三种
4、后台触发离线push字段需增加字段和离线包大小修改
离线push数据包带上特定Category字段(字段内容需要前后台一起定义,必须要保持一致),手机端收到时,就能展示上述代码对应Category设置的按钮,和响应按钮事件。
重大修改: 离线push数据包之前能带的数据最多为256字节,现在APPLE将该数值放大到2KB。 这个应该是只针对IOS8的。
5、按钮点击事件回调
用户点击push上的按钮后,APP就能收到如下回调事件,在该回调里响应按钮事件。原来收到push的点击回调事件没有改变。
三、新增Location Notification
当用户进入或者离开某个在应用中注册的区域时,应用能收到通知。
苹果keynote展示push通知的一些优化,特别的允许用户能够直接在push上进行交互,这么牛逼的功能,当然第一时间研究。
下面看看具体的产品细节和技术实现:
产品细节:
以下都是使用本地push测试的:(离线push效果一样)
1、状态栏、锁屏状态下和通知中心中的效果如下:(这里最多只能设置两个按键)
2、通知展示设置为Alert模式时,点击Options,会弹出操作选项如下:( 除去launch和close,这里最多能够设置四个选项)
Apple只提供了两种按钮点击后的响应模式:
1、 点击后应用在后台被唤醒 像赞这种轻操作则可以使用这种模式
2、 点击后应用被唤醒到前台 评论回复这些需要用户进一步操作的,适合这种情况。
在WWDC keynote我们看到的短信push演示视频中,收到短信push后能直接播放语音,且能够在当前屏幕直接录音回复的高大上操作,Apple还是木有开放给普通应用使用。(目前在API文档中,只提供了上述的两种操作模式)
技术实现细节:
一、注册User Notification
1、注册API改变
原来注册离线push的API
- (void)registerForRemoteNotificationTypes:(UIRemoteNotificationType)types
已经废弃。
转为使用:
- (void)registerForRemoteNotificationsNS_AVAILABLE_IOS(8_0);
2、增加注册UserNotification (用户可操作的push)的API,用于注册PUSH中展示的按钮和按钮响应事件。
3、增加注册UserNotification成功的回调。原来注册离线成功和失败的回调没有改变
二、设置push中的操作按钮信息
1、注册单个按钮的title、identifier和按钮模式等信息
按钮的activationMode有以下两种模式:
UIUserNotificationActivationModeForeground:点击按钮后,会呼起APP
UIUserNotificationActivationModeBackground:点击按钮后,APP在后台运行
2、多个按钮组合成一个Category。用于在一条push中展示多个操作按钮。Category也有identifier,可以注册多个Category,不同的push类型可以使用不同的Category。实现不同push类型中展示不同操作按钮。
每种Category的按钮有两种展示情况:
一个是默认模式(对于Alert模式时,弹出的操作选项,最多四个按钮)
一个是最少展示模式(对应状态栏、锁屏状态下和通知中心中展示的按钮,最多两个按钮)。
3、注册UserNotification时,设置NotificationType和Categories
NotificationType 包括应用图标上的数字、push声音、和push弹框三种
4、后台触发离线push字段需增加字段和离线包大小修改
离线push数据包带上特定Category字段(字段内容需要前后台一起定义,必须要保持一致),手机端收到时,就能展示上述代码对应Category设置的按钮,和响应按钮事件。
重大修改: 离线push数据包之前能带的数据最多为256字节,现在APPLE将该数值放大到2KB。 这个应该是只针对IOS8的。
5、按钮点击事件回调
用户点击push上的按钮后,APP就能收到如下回调事件,在该回调里响应按钮事件。原来收到push的点击回调事件没有改变。
三、新增Location Notification
当用户进入或者离开某个在应用中注册的区域时,应用能收到通知。
相关文章推荐
- IOS8 通知中心(Notification Center)新特性
- IOS8 通知中心(Notification Center)新特性
- iOS8新特性之交互式通知
- iOS8新特性之交互式远程通知
- Win9新特性曝光:集成通知中心
- iOS8新特性之基于地理位置的消息通知UILocalNotification
- ios8新特性widget开发(自定义的通知栏样式)
- ios8推送及通知中心快捷回复的做法(ios自学笔记)
- ios8新特性widget开发(手机上和通知栏并列的今天的制作)
- iOS8 通知中心扩展制作入门
- IOS8新特性不会弹出本地的通知、[RemindersCell _setDeleteAnimationInProgress:]: message sent to deallocated instanc
- iOS8新特性之基于地理位置的消息通知UILocalNotification
- iOS8新特性之交互式通知
- APP 适配 iOS8,位置、通知等特性
- ios8通知中心与恢复按钮 Notification
- iOS8新特性之基于地理位置的消息通知UILocalNotification
- iOS8新特性之基于地理位置的消息通知UILocalNotification
- iOS8新特性之交互式通知
- IOS8最好用技巧:在通知中心添加蜂窝网络
- iOS8新特性(1)-UIPopoverPresentationController使用