You are previewing Developing for Apple Watch, 2nd Edition.
O'Reilly logo
Developing for Apple Watch, 2nd Edition

Book Description

You've got a great idea for an Apple Watch app. But how do you get your app from idea to wrist? This book shows you how to make native watchOS apps for Apple's most personal device yet. You'll learn how to display beautiful interfaces to the user, how to use the watch's heart rate monitor and other hardware features, and the best way to keep everything in sync across your users' devices. New in this edition is coverage of native apps for watchOS 2. With the new version of the WatchKit SDK in Xcode 7, your apps run directly on the watch.

Table of Contents

  1. <span xmlns="" xmlns:epub="" class="toc-secnum">&#160;</span>AcknowledgmentsAcknowledgments
  2. <span xmlns="" xmlns:epub="" class="toc-secnum">&#160;</span>PrefacePreface
    1. What’s in This Book?
    2. Who’s This Book For?
    3. The Code in This Book
    4. Online Resources
  3. <span xmlns="" xmlns:epub="" class="toc-secnum">1. </span>An Overview of Apple WatchAn Overview of Apple Watch
    1. Apple Watch Basics
    2. Apple Watch App-Design Concepts
    3. From iPhone App to Apple Watch App
    4. Wrap-Up
  4. <span xmlns="" xmlns:epub="" class="toc-secnum">2. </span>WatchKit Extension OverviewWatchKit Extension Overview
    1. Creating Your First WatchKit Extension
    2. Adding User Interface Elements
    3. Adding a Glance
    4. The iPhone App--WatchKit Extension Relationship
    5. Deployment of WatchKit Apps
    6. Wrap-Up
  5. <span xmlns="" xmlns:epub="" class="toc-secnum">3. </span>WatchKit User InterfacesWatchKit User Interfaces
    1. Meet <span xmlns="" xmlns:epub="" class="cf class">WKInterfaceObject</span>
    2. Creating Interface Objects
    3. Designing Your UI in the Storyboard
    4. Interface Object Layout
    5. Creating Your Apple Watch App
    6. Wrap-Up
  6. <span xmlns="" xmlns:epub="" class="toc-secnum">4. </span>Organizing Your UI with GroupsOrganizing Your UI with Groups
    1. Group Basics
    2. Adding Detail to a Screen
    3. Animation and Groups
    4. Wrap-Up
  7. <span xmlns="" xmlns:epub="" class="toc-secnum">5. </span>Delivering Dynamic Content with TablesDelivering Dynamic Content with Tables
    1. Comparing WatchKit Tables and iOS Table Views
    2. Row Types and Storyboard Groups
    3. Linking Content to the UI with Row Controllers
    4. Configuring the Content in Tables
    5. Modifying Tables
    6. Considering Table Input
    7. Performance Concerns
    8. Wrap-Up
  8. <span xmlns="" xmlns:epub="" class="toc-secnum">6. </span>Navigating Between InterfacesNavigating Between Interfaces
    1. Linking Interfaces in Your Storyboard
    2. Interface Transitions in Code
    3. Passing Data Between Interfaces
    4. Configuring Tracks in TapALap
    5. Wrap-Up
  9. <span xmlns="" xmlns:epub="" class="toc-secnum">7. </span>WatchKit Extension LifecycleWatchKit Extension Lifecycle
    1. Adding Lifecycle Methods
    2. Adopting Handoff in the Extension Delegate
    3. Responding to Notifications
    4. Wrap-Up
  10. <span xmlns="" xmlns:epub="" class="toc-secnum">8. </span>Communicating with WatchConnectivityCommunicating with WatchConnectivity
    1. Making Network Requests on Apple Watch
    2. Preparing for WatchConnectivity: Persisting Data in TapALap
    3. Talking to the iPhone with WatchConnectivity
    4. Wrap-Up
  11. <span xmlns="" xmlns:epub="" class="toc-secnum">9. </span>Creating Complications with ClockKitCreating Complications with ClockKit
    1. Watch Faces and Complications
    2. Providing Complications in Your App
    3. Managing Complication Privacy
    4. Providing Placeholder Complications
    5. Restricting Complication Families
    6. Wrap-Up
  12. <span xmlns="" xmlns:epub="" class="toc-secnum">10. </span>Extending Complications with Time TravelExtending Complications with Time Travel
    1. Making Your Complication Excellent with Time Travel
    2. Updating Complications
    3. Wrap-Up
  13. <span xmlns="" xmlns:epub="" class="toc-secnum">11. </span>Getting Personal with Sensor Data and HealthKitGetting Personal with Sensor Data and HealthKit
    1. Getting Device Motion with the CoreMotion Framework
    2. Working Out with HealthKit
    3. Wrap-Up
  14. <span xmlns="" xmlns:epub="" class="toc-secnum">12. </span>Unlocking Watch App PerformanceUnlocking Watch App Performance
    1. Making Apps Launch Quickly
    2. Increasing Performance by Removing Data
    3. Inspecting Performance with Instruments
    4. The Illusion of Performance: Preloading Data
    5. Wrap-Up
  15. <span xmlns="" xmlns:epub="" class="toc-secnum">13. </span>Being a Good Watch App CitizenBeing a Good Watch App Citizen
    1. Localizing and Internationalizing Your App
    2. Supporting Every User with Accessibility
    3. Wrap-Up