AppleWatch开发入门七——watchOS中通知的应用(一)

简介: AppleWatch开发入门七——watchOS中通知的应用

AppleWatch开发入门七——watchOS中通知的应用


一、引言


       在iOS系统中,支持的通知有两种类型:本地通知和远程通知。本地通知多用于计时类通知,远程的又称推送,多用于一些提示动态的提示信息。这里有相关通知的一些知识总结:


本地推送:http://my.oschina.net/u/2340880/blog/405491


远程推送:http://my.oschina.net/u/2340880/blog/413584


       在watch中,通知是和iphone同步的,在iphone上的App收到通知的同时,会默认也推送到watch上,基于watch的穿戴性,对用户来说,它上面的通知信息将比iphone更加及时。


二、WatchOS通知概览


       首先,watch上的通知分为两部分:short-look和long-lock。简而言之,short-look,可以理解为一个简单的通知预览,它会将通知发起的APP和主要标题等信息展示给你,让你一目了然,当用户抬起手腕,查看这个通知一定时间,这个短通知就会转换为long-look通知。short-look的通知界面我们不能够自定义,系统为我们设计好了模样。


长通知的界面我们是可以进行一定程度上的自定义的,并且可以添加按钮等逻辑操作。


       long-look也分为两种界面,静态界面和动态界面。这个也好理解,静态界面是我们在写程序时就定义好的界面,在通知发送到watch上时,界面会自动匹配通知内容进行显示。动态的界面则是当收到通知时,会先执行我们相应的配置代码,之后在进行通知界面的展示。一个long-look界面大致如下:

image.png



在long-lock中,界面定义为三个部分,头部标题栏,自定义视图栏和按钮交互区。头部的标题栏我们不能自定义,它是一个半透明的上面有App图标和名字的横栏。其下面是我们可以自定义的区域,我们可以在storyBoard中拉入文本和图片。最下面是一些交互按钮,其名称等配置信息在推送的文件中定义。


三、如何在模拟器上模拟远程推送


       在watchOS模拟器上,Xcode为我们准备好了一种可以模拟测试推送的方式。如果我们创建项目时,选择了NotifacationScene,则Xcode会默认为我们创建一个apns文件:

image.png



这个文件就是模拟推送的相关配置文件,如果没有,我们也可以手动来创建:

image.png



文件中的内容格式如下:


{

   "aps": {

       "alert": {

           "body": "通知",

           "title": "通知来了"

       },

       "category": "myCategory"

   },

 

   "WatchKit Simulator Actions": [

       {

           "title": "First Button",

           "identifier": "firstButtonAction"

                               

       }

   ],

 

   "customKey": "Use this file to define a testing payload for your notifications. The aps dictionary specifies the category, alert text and title. The WatchKit Simulator Actions array can provide info for one or more action buttons in addition to the standard Dismiss button. Any other top level keys are custom payload. If you have multiple such JSON files in your project, you'll be able to select them when choosing to debug the notification interface of your Watch App."

}

这是一些json格式的数据,其中alert是对推送内容的设置,body会显示在long-look的标题栏,title会显示在short-look的标题栏,Actions数组中是对按钮就行配置,每一个按钮可以设置一个标题和id,标题用于在推送界面显示,id用于处理点击按钮后触发的逻辑。


创建好这个,我们可以来试着测试一下推送的界面,选择推送工程,运行即可:

image.png

目录
相关文章
|
4月前
|
小程序
【微信小程序】实战案例 -- 向订阅用户发送消息(范例:报名提醒)
【微信小程序】实战案例 -- 向订阅用户发送消息(范例:报名提醒)
267 0
|
5月前
|
消息中间件 Java Spring
JavaWeb后端开发Spring框架之消息 消息队列案例--订单短信通知
JavaWeb后端开发Spring框架之消息 消息队列案例--订单短信通知
50 0
|
6月前
|
Java API Apache
【Apache ShenYu源码】看看贡献者如何实现支持提醒通知设计
在阅读中,还发现了有个html文件忘记加了开源协议,我们提下PR修复下,又收获了一次开源贡献!!PR提交戳这。
【Apache ShenYu源码】看看贡献者如何实现支持提醒通知设计
|
6月前
|
小程序 前端开发 IDE
【经验分享】支付宝小程序订阅消息功能实操(前端篇)|江海计划
【经验分享】支付宝小程序订阅消息功能实操(前端篇)|江海计划
691 7
|
6月前
|
移动开发 小程序 Go
【社区每周】小程序消息订阅插件升级为消息订阅接口(2022年8月第五期)
【社区每周】小程序消息订阅插件升级为消息订阅接口(2022年8月第五期)
43 0
|
小程序 JavaScript 索引
微信小程序开发入门与实战(数据、事件、条件)
微信小程序开发入门与实战(数据、事件、条件)
微信小程序开发入门与实战(数据、事件、条件)
|
Java 微服务
Java报告推送失败补偿机制;钉钉群通知消息核心代码
Java报告推送失败补偿机制,超过次数后使用钉钉通知开发 自动补偿实现: 要求方法调用的过程中,失败的时候,系统有办法进行自动重试,重试达到一定次数后,钉钉通知开发。 实现设计:注解,反射,定时任务
325 0
Java报告推送失败补偿机制;钉钉群通知消息核心代码
|
小程序 开发工具
微信小程序订阅消息:用云服务编写订阅消息超详细描述
微信小程序订阅消息:用云服务编写订阅消息超详细描述
微信小程序订阅消息:用云服务编写订阅消息超详细描述
|
存储 C++ Python
ROS入门笔记(十):编写与测试简单的消息发布器和订阅器(C++)
ROS入门笔记(十):编写与测试简单的消息发布器和订阅器(C++)
421 0
ROS入门笔记(十):编写与测试简单的消息发布器和订阅器(C++)