Watch Specs• Cases: aluminum, stainless steel & gold • Front: Ion-X glass / Saphire glass • Many different bands • Price: $399-10K+
4
Tech Specs• 18 hour battery life • Heart rate sensor • Accelerometer • Gyroscope • 8 GB storage / 512 MB RAM • No GPS but uses iPhone
7
Communication• Answer / make phone calls
• Built in mic and speaker • SMS
• read and pre-canned responses • Siri instead of keyboard
11
Apple Apps• Watch app • Turn by turn navigation • Apple pay • Customizable watch faces • Remote for Apple TV, Music • Camera remote
12
Other Apps• Facebook, instagram, twitter • Slack • W Hotels • American Airlines • Pizza pizza • Uber
13
Architecture (cont’d)• Only UI rendered on watch (for now) • Communication between watch app and
extension on iPhone happens seamlessly (blue tooth)
16
Glances• Glances show a single view
• no interaction • launches app when tapped • configured using iPhone app
17
Building a Watch App• Why use watch instead of phone? • Perfect for
• Brief interactions • Notifications • Apps that require watch hardware
• Fitness
22
Design Principles• Don’t port your phone app onto the watch • Avoid using tech that requires user
permission like core location • request will trigger prompt while phone in pocket
23
Design Principles• Interactions with watch should be brief
• WatchKit app is suspended without user interaction • WatchKit extension only runs while user
interacts with app • Do not use background execution modes • Avoid performing long-running tasks with a technology
24
Page-based• Closely related data • Two or more interface controllers • “Carousel” (dot indicator) • Swipe left/right
26
Hierarchical• Similar to navigation controller in iOS • Hierarchical views • Starts with root interface controller
• Push other controllers on top
27
Apple Watch App Development• WatchKit API available in iOS 8.2
• Beta released in Nov 2014 • Xcode 6.2 • Watch OS 1.0
31
Sharing Data• iPhone app and watch app are sandboxed
• must use app groups to share data • Static • Dynamic
32
UI Layout• Different layout model than iOS
• no view hierarchies, Xcode arranges vertically • Groups
• container for other elements • can arrange horizontally • Nest groups
34
UI• Different layout model than iOS
• no view hierarchies, Xcode arranges vertically • Groups
• container for other elements • can arrange horizontally
35
References• WatchKit page
• https://developer.apple.com/watchkit/ • Programming Guide
• https://developer.apple.com/library/prerelease/ios/documentation/General/Conceptual/WatchKitProgrammingGuide/index.html
• Human Interface Guidelines • https://developer.apple.com/watch/human-interface-guidelines/
38