instagram app for apple watch

51
Building for the Apple Watch

Upload: happywatch

Post on 17-Jul-2015

1.863 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Instagram app for Apple Watch

Building for the Apple Watch

Page 2: Instagram app for Apple Watch

Ryan Nystrom @_ryannystrom

Arnaud Coomans @acoomans

Page 3: Instagram app for Apple Watch

DESIGN

Page 4: Instagram app for Apple Watch

DESIGN

Personal Holistic Lightweight

Page 5: Instagram app for Apple Watch

DESIGN

•New UI Elements •Simple Navigation •Glances •Notifications

Page 6: Instagram app for Apple Watch

DESIGN

“Do the simple thing first.”

Page 7: Instagram app for Apple Watch

DESIGN

Page 8: Instagram app for Apple Watch

DESIGN

Images

Buttons

Labels

Page 9: Instagram app for Apple Watch

ARCHITECTURE

•iOS App •WatchKit Extension •Watch App

Page 10: Instagram app for Apple Watch

ARCHITECTURE

Event

Page 11: Instagram app for Apple Watch

EventCode Executes

ARCHITECTURE

Page 12: Instagram app for Apple Watch

Code ExecutesUI Updated

ARCHITECTURE

Page 13: Instagram app for Apple Watch

ARCHITECTURE

Data Transfer & Latency

Page 14: Instagram app for Apple Watch

XCODE

Page 15: Instagram app for Apple Watch

XCODE

Page 16: Instagram app for Apple Watch

i18n

•NSLocalizedString •Strings file •Storyboards

Page 17: Instagram app for Apple Watch

i18n

Hello, world!

Page 18: Instagram app for Apple Watch

i18n

Page 19: Instagram app for Apple Watch

i18n

안녕하세요!

Page 20: Instagram app for Apple Watch

i18n

Page 21: Instagram app for Apple Watch

IMAGES

Page 22: Instagram app for Apple Watch

IMAGES

•Put in Watch App target •Avoid data transfer •Load via Storyboard

Local

Page 23: Instagram app for Apple Watch

IMAGES

•Use URL caching •Async fetching/decoding

Remote

Page 24: Instagram app for Apple Watch

EXISTING APP

Reusing Code

Page 25: Instagram app for Apple Watch

EXISTING APP

Rebuilding

Page 26: Instagram app for Apple Watch

EXISTING APP

Page 27: Instagram app for Apple Watch

SESSIONS

Please speak your password.x

Page 28: Instagram app for Apple Watch

SESSIONS

Page 29: Instagram app for Apple Watch

SESSIONS

+

Page 30: Instagram app for Apple Watch

SESSIONS

+ =

Page 31: Instagram app for Apple Watch

HANDOFF

Context

Page 32: Instagram app for Apple Watch

HANDOFF

Small Screen Limited Info Brief Interactions

Page 34: Instagram app for Apple Watch

NOTIFICATIONS

Page 35: Instagram app for Apple Watch

NOTIFICATIONS

Page 36: Instagram app for Apple Watch

NOTIFICATIONS

Page 37: Instagram app for Apple Watch

NOTIFICATIONS

•Custom Actions •Watch and iOS •APN Categories

Page 38: Instagram app for Apple Watch

NOTIFICATIONS

Few people use Alerts

Page 39: Instagram app for Apple Watch

TESTING

Page 40: Instagram app for Apple Watch

TESTING

•Can’t initialize WatchKit classes •No Storyboards in test target

Page 41: Instagram app for Apple Watch

TESTING

April 24, 2015

Page 42: Instagram app for Apple Watch

WKInterfaceTable

Page 43: Instagram app for Apple Watch

IGInterfaceDataTable

Page 44: Instagram app for Apple Watch

IGINTERFACEDATATABLE

Page 45: Instagram app for Apple Watch

- (NSInteger)numberOfRowsInTable:(WKInterfaceTable *)table section:(NSInteger)section { return self.items.count; }

IGINTERFACEDATATABLE

- (NSString *)table:(WKInterfaceTable *)table rowIdentifierAtIndexPath:(NSIndexPath *)indexPath { return @"RowIdentifier"; }

Page 46: Instagram app for Apple Watch

IGINTERFACEDATATABLE

- (void)table:(WKInterfaceTable *)table configureRowController:(NSObject *)rowController forIndexPath:(NSIndexPath *)indexPath { MyController *controller = (MyController *)rowController; [controller.textLabel setText:@"Hello!"]; }

Page 47: Instagram app for Apple Watch

IGINTERFACEDATATABLE

- (void)table:(WKInterfaceTable *)table didSelectRowAtIndex:(NSInteger)rowIndex { NSIndexPath *indexPath = [table indexPathFromRowIndex:rowIndex]; if (indexPath) { // do something with the index path or data } }

Page 48: Instagram app for Apple Watch

DEMO

Page 49: Instagram app for Apple Watch

IGInterfaceDataTable

Page 50: Instagram app for Apple Watch

Q+A

QUESTIONS?

Page 51: Instagram app for Apple Watch

THANKS