Essential Training – Apple WatchKit
The worlds largest company with a valuation of almost One Trillion Dollars, continues to amaze everyone.
Apple never ceases to impress averyone with their incredible vision to come up with game-changers that literally dominate and spawn a whole new industry and eco-systems.
And this time, its in the wearables industry.
With the introduction of the Apple Watch, Apple stands to disrupt and revolutionize the smartwatch wearables industry. Reports have confirmed that Apple has manufactured and plans to sell over 15 million AppleWatch’s in its initial launch in mid-April 2015.
So, if you’re making Mobile Apps – this is potentially a MASSIVE opportunity for you!
As with all new technologies, those who move first and adapt rapidly get the early-mover advantage. Those who don’t, are left behind trying to play the catch-up game.
Fortunately and unfortunately, thats the reality of how technology evolves and works. Getting in early helps you get initial traction faster than late comers, and lets you dominate your app niches quickly.
By learning Apple WatchKit development, you are literally opening up the doors to massive opportunuities for you as a developer.
And, because this really is “new” territory behind which Apple is putting all its might and magic – the size of the opportunity stands to mushroom into unprecendented dimensions.
The questions you should be asking yourself are…
- Am I bold and fast enough to seize this opportunity?
- Do I want to have a shot at making the next wildly successful Apple Watch App?
- Do I want to share similar successes of the makers of FlappyBird, Angry Birds and the likes?
The Apple WatchKit Framework and Development Environment
Apple Watch gives developers an opportunity to interact with users in an entirely new way.
Apple Watch development is fairly simple, thanks to the WatchKit Framework and the new version of Xcode.
Adding a WatchKit extension to an existing app is a simple matter of adding a WatchKit target to the app. You may also create a new app and add a WatchKit extension immediately.
A WatchKit App is organized into three parts
- the app that runs on iPhone distinct from the watch environment,
- the WatchKit app itself, which exists only on the watch, and contains storyboards but no code,
- the WatchKit extension, which runs on the iPhone and contains the controllers for the watch app. The extension also communicates between the phone app and the watch app.
There are three types of things which may be displayed on the watch
- A WatchKit application, which presents an interface to an iPhone app to the user
- A Glance, which is a single simple screen of information presented to the user by the app.
- Notifications, which can be sent to the user’s watch from an app either in the foreground or background state.
In our Apple WatchKit Essential Training course, we cover all three of these in great detail.
How The Apple WatchKit is Different…
Even though the watch app itself runs no code, the watch contains a reasonably full set of hardware devices, such as an accelerometer, gyro-meter, and a heartbeat sensor.
Data from these devices can be sent to the iPhone app that hosts the watch app and is processed. By combining this data with the phone’s Wifi or GPS and other sensor data, a complete picture can be gained of the user’s location, current activity level, compass direction, and more.
Apple Watch also uses a completely new touch engine, which senses the force of a user’s touch as well as the fact that the user is just touching the screen.
This might be used to develop code that handles a wider variety of touchscreen gestures, or brings up different information depending on now, not only where but how the screen is touched.
Of course, the screen the user is touching is a full retina display, which makes presenting high-quality interfaces in your apps a breeze.
What You Will Learn
This course teaches everything you need to develop compelling apps for Apple Watch using the WatchKit framework and the Swift programming language.
You will learn all of the following topics…
Requirements and First Steps – Adding a WatchKit target to an existing iPhone app. The WatchKit environment, and the function of the Extension and WatchKit app itself. First steps in user interface development, including a HelloWatch app.
The WatchKit interface – Pushing new interface controllers and presenting them modally, with and without segues. The context object and its role in communicating data. Getting input from the user. Communicating between the watch app and the iPhone app that hosts it. Table views on Apple Watch. We’ll also discuss view groups as a way to manage the positioning of user interface controls.
Glances – A glance is a static view on the watch that gives an update to the user about something that’s happening in a phone app. We’ll learn all about glances in this unit. How to bring up a watch app when the user taps a glance.
Notifications – We’ll cover the difference between static and dynamic notifications and how to display both. We’ll also learn how users can interact with these notifications.
Structure of the Course Units
All the material in the course is presented at a very high level by necessity, and will help you get started and master all the essential concepts you need to know for Apple WatchKit development.
[Unit 1] Requirements and First Steps.
Adding a WatchKit target to an existing iPhone app. The WatchKit environment, and the function of the Extension and WatchKit app itself. First steps in user interface development, including a HelloWatch app.
[Unit 2] The WatchKit interface.
Part one of a discussion of WKInterfaceController (the main View Controller class used in WatchKit. Pushing new interface controllers and presenting them modaly, with and without segues. The context object and its role in communicating data.
[Unit 3] The WatchKit interface, continued.
Part two of the WKInterfaceController discussion. Getting input from the user. Communicating between the watch app and the iPhone app that hosts it. Table views on Apple Watch. We’ll also discuss view groups as a way to manage the positioning of user interface controls.
*** Sections below will be added every week.***
[Unit 4] Glances.
A glance is a static view on the watch that gives an update to the user about something that’s happening in a phone app. We’ll learn all about glances in this unit. How to bring up a watch app when the user taps a glance.
[Unit 5] Notifications.
We’ll cover the difference between static and dynamic notifications and how to display both. We’ll also learn how users can interact with these notifications.
You also get to see the replays of 2 Bonus Live Webinars.
Agenda for Webinar #1 (1.5 hrs) – Learn how Apple WatchKit integrates into the iOS environment for developers. See how Rick integrates a real App live!
- Setting up a new watch kit project
- An overview of the technology
- Designing a watch app interface
- Basic watch controls (label, button, slider, and switch) and how to use them
- Sending data to the watch and responding to control interaction
- A full demo app: a Calculator for Apple Watch.
- Open Q&A Session
Agenda for Webinar #2 (1.5 hrs) – To Be Announced, but will cover all aspects of the top WatchKit apps and insider feedback from developer community etc. You don’t want to miss this one!
Introduction to WatchKit
- Intro to WatchKit – Discussion (8:08)
- Preparing an App For WatchKit – Demo 1 (6:02)
- WatchKit Demo Source Code 1
- The WatchKit Interface – Discussion (8:35)
- Finishing the HelloWatch app – Demo 2 (6:55)
- WatchKit Demo Source Code 2
WatchKit Interface Controllers
- WatchKit Interface Controller: Part 1 – Discussion (8:10)
- Set up a Simple Navigation Interface – Demo (11:30)
- Set up a Simple Modal Interface – Demo (4:04)
- Initialization and pushing controllers with contexts – Demo (6:30)
- WatchKit Demo Source Code – 1
- Presenting modal interface controllers and page groups – Demo (4:27)
- WatchKit Demo Source Code – 2
- WatchKit Interface Controller : Part II (Segues) – Discussion (6:14)
- Segueing to a single interface controller – Demo (5:30)
- WatchKit Demo Source Code – 3
- Segueing modally to a page-based collection of interface controllers – Demo (7:28)
- WatchKit Demo Source Code – 4
WatchKit Interface Continued
- Groups Discussion (4:05)
- Groups, adding a Group to a Button Demo with Source Code (14:17)
- Context menus Discussion (5:09)
- Context Menus, adding Items in Code with Source Code (8:18)
- Text Input Discussion (5:11)
- Getting Text Input from the User with Source Code (4:53)
- Communication with Parent App (5:09)
- Demo of Sending and Receiving Data to/from Parent App (9:00)
- Communication Between WatchKit and the App (8:33)
- Tables in WatchKit (6:14)
- Sample Table View (8:08)
- Responding to Cell Selection (7:26)
- The sections below are being added on a regular basis, as and when they are released.
- SECTION 5 – Notifications