watchOS app开发概论

本文详细介绍了watchOS应用程序的开发,包括独立与依赖iOS的两种类型,强调了设计应聚焦于单任务和快速交互。重点讨论了complication和notification的开发,阐述了watchKitApp与watchKitExtension的交互机制,并解析了应用的生命周期和页面展示流程。此外,还提供了创建不同类型watchOSapp的官方链接和工程结构分析。
watchOS app功能
  • Glance:快速浏览页面,手势上滑拉出(3之后废弃了)
  • Complication:复杂功能,也就是在表盘上为自己的app添加入口
  • Notification:通知,当iPhone锁屏时,接收push
  • watchOS app:运行在watch上的应用

通常我们使用手表是为了获取最关心的内容,所以在设计时注意一下几点
1、设计的功能应该是单个任务,因为用户抬起手腕看手表,是想获取最关心的某项信息
2、功能应该是可以快速交互,因为watch的互动是以秒为单位,必须迅速呈现信息
3、watch上的功能应该具有独立性,独立的watch应该不依赖iphone app,在watchOS 6之后,可以设计一个仅在Apple Watch上可用的app,也可以设计一个可以(但不需要)您的iPhone应用程序的应用程序。

一、watchOS project的类别
  • 仅在watchOS上运行的独立watchOS app

    用户可以选择是否安装iOS app、watchOS app或者两个都安装,对于如果创建独立的watchOS app以及如果将现有的依赖iOS的watchOS app转换为独立的watchOS app可以参考此官方链接

  • 依赖iOS补充 app的依赖watchOS app

    此类型的watchOS app需要和iOS app有互动时才会创建,它只有依赖iOS app才可以正常运行,但是watchOS 5之前,所有的watchOS app都是依赖watchOS app,watchOS 6.2之后,带有watchOS app的iOS app在app store上下载安装是通用的,创建依赖iOS app的watchOS app参考此官方链接

1、仅在watchOS上运行的独立watchOS app

具体的创建参考此官方链接,独立的watchOS app的bundle ID是自己独立的ID
在这里插入图片描述

2、依赖iOS补充 app的依赖watchOS app

具体的创建参考此官方链接,下面我们看一下工程结构,创建好之后的包含watchOS app和iOS app的工程的工程结构如图所示
在这里插入图片描述
我们可以看到此时工程结构基本分成三部分

  • iOS app:就是运行在我们iPhone上的app,包含主app的业务功能
  • watchKit App:包含watchOS app的storyBoard和其assets的资源包(bundle)
  • watchKit Extension:包含watch app的代码,可以看到xcode自动创建的interface、notification和complication的相关文件就放在这块

watchKit App和watchKit Extension的bundle ID必须和依赖iOS App的bundle ID,和其匹配。开发是在watchKit app中编辑storyboard,并且在watchKit extension中开发代码

二、watchOS App的架构

无论独立的watchOS App还是依赖iOS App的watchOS app,watchOS app都包含watchKit App和watchKit Extension,watchKit App安装在watch上,负责展示页面,watchKit Extension安装在iphone上负责业务逻辑,二者通过watchKit通讯,如下图所示。
200135324859359当用户安装并打开watchOS app,watchKit app加载storyBoard展示watchOS app的相关页面,同时向iOS app请求启动watchKit extension,完成相应的业务逻辑,具体流程参考下图
200135433767455

三、watchOS app功能开发概论

现在watchOS app包含的功能有Glance(3之后删除)、notification、complication,下面我们看一下开发notification、complication功能的相关知识

1、complication(复杂功能)开发的相关知识

complications可以使我们在watch的表盘增加自己watchOS app的入口,但是空间有限且尽可能覆盖不同类型的表盘,创建complications可参考官方文档,在创建watchOS app时勾选complication,xcode将创建并且配置complication的数据源,数据源包括配置complication的基本的.h/.m文件、填充timeline、提供占位的资源以及创建compliction使用的assets,为complications添加占位资源可参考官方文档,可以使用静态方式添加也可以使用动态方式添加

2、notification

notification有两种展现形式:short looks和long looks,short looks接收到notificatiion时手腕抬起显示,手腕放下消失;long looks显示有两种情况,一种是用户看到short looks时手腕一直抬起,long looks将展示;另一种是用户点击short looks。
在这里插入图片描述

notification的展示界面有两种:static界面dynamic界面,static界面仅展示通知内容和图像,dynamic界面可以展示丰富内容。开发者可根据需求自定义这两种界面的content区域(不能改变界面的结构),这两种界面的载入模式如下图
在这里插入图片描述
了解界面的种类之后,我们需要了解watch的页面的生命周期,如下图
200135553923292

参考:https://www.cnblogs.com/zy1987/p/4352548.html
https://blog.csdn.net/wangyanchang21/article/details/80928126
https://juejin.im/post/6871490308589551629

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员的修养

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值