Apple Watch产品设计经验 FROM 去哪网
在参与2016WWDC过程中,听取了【去哪网】某位从业人员的关于Apple Watch产品设计技术相关的分享,将要点整理如下,作为学习提纲之用,供参考
文中Apple WatchOS应该是基于WatchOS 2.0版本,但某些设计和产品经验同样适用于Apple WatchOS 3.0.
初识 & 迷惘
- Watch OS Glance?问题:状态展示?如何更新?有无用户交互?
- 只适合进行时间相关的内容展现
- 运营相关的内容意义不大,手表是效率工具
- 使用类似健身记录的圆环展示方式并不适用于第三方App,最大的Lower也只有XXX像素
- 色彩略单调,watch lib;
- 人们不会一直使用某个App;
- 操作要简单,10-30s完成;
- 推送展现,只有watch在手上才会推送到watch上;
- app group是什么鬼?现在常用于进行非实时简单数据通讯!
产品层面
- 明亮色彩提升产品感受;
- 尽量减少滚动,一屏展示所表现的内容;
技术层面
- Phone & Watch代码复用
- URL Schema做跳转协议,使用Extension和App的交互接口相统一;
- 与iPhone App同步,使用MMWormhole触发,如退出登录等;
Apple Watch OS 2.0 Changes
- App无法与Watch Extension共享Framework;
- 不在要求运行Watch App时必须与手机处于联通状态;
- MMWormhole仍然可用,但也可以使用WatchConnectivity替换(WatchConnectivity更推荐使用);
性能 & 优化
Network优化点
- 使用压缩协议优化减少Request & Response
- 隐藏不必要的JSON,需要什么给什么,不多不少
- 发送对应的Watch大小的图片,38" or 42"
- 对于List,针对Watch设定每一页的大小(经验值:5)
- 对于UI团队提供的图片资源,图片尺寸要恰好适配Watch
- App中使用setImageNamed
- Watch中使用setImageData
性能考虑
UI性能
- 减少UI复杂度,大简至美
- WKInterfaceTable第一次加载的行数不要太多
- 在RowController的willActivate方法中使用dispatch来请求图片
WatchOS 2.0 New Features
- Digital Crown
- ClockKit
- Animation (还有很多局限)
WatchOS 3.0 New Features
- The Dock
- Stickiness
- Gesture support
- Direct access to the Digital Crown
- Improved notification support
- Extra large complications
- Workout app improvements
- Background App Refresh
- Faster interactions
WatchOS开发中遇到的坑
- 证书签名: WatchApp没有Build Setting
- 解决办法: 手动修改project文件
- WKInterfaceMap在1.0版本中内存泄露
- 最终在第一版本中暂时去掉了Map
- XCode 6.2 中的CI(xcodebuild)不支持导出带有Watch的archive
- XCode7解决了这个问题
建议使用XCode自动去管理证书
Watch OS开发的优势
- 了解新技术,Watch会逼着你用StoryBoard
- Share Framework使用;
- Watch的一些新技术和架构,可以看出苹果对新技术的一些态度及思考
- 如WKInterfaceTable vs UITableView
参考链接
ENJOY~