How to Develop an App for Apple Watch

The smartwatch domain of the accessories market today offers one of the most attractive prospects. We are talking about a fundamental part of the market in clear growth thanks to the development of numerous apps for Apple Watch made available thanks to the most purchased device in recent years.

However, developing an app for smartwatches is not about transforming an existing application by transferring it to a smaller screen. In a nutshell it is not a very simple exercise.

Creating an app for Apple Watch can be a bit complicated if you don’t know the essential aspects of developing the app in question (especially if you’re not familiar with the operating system of Apple devices).

Before starting this exercise, however, it will be necessary to investigate and read up on the subject, as well as having a different approach to assess the expectations and commitment of customers with the application (together with the specific use cases in which the latter will use).

In this article you will find advice on how to develop an app for Apple Watch especially if you have never had experience with the iOS operating system that moves Apple-signed devices.

After identifying the user request and learning how to use iOS, the third step will be to familiarize yourself with WatchOS.

How to create an app for Apple Watch

Define a new target for your project. Now follow the procedure mentioned below:

File> New> Destination

This step will create two folders, namely WatchKit App and WatchKit Extension.

The WatchKit app will only include Storyboards and image resources, while the Logic will need to be contained in the WatchKit extension.

Now let’s move on to WatchKit Life Cycle, which is an essential part of the iWatch app development. There are two distinct methods through which it is possible to make phone calls: before being able to view the user interface or by displaying the user interface through init and awake With Context.

Although it is possible to create user interface elements through init, when there are numerous elements, it is advisable to do so via awake With Context.

WatchOs Storyboard

The “views” are divided into a 3 × 3 grid where everything is duly positioned according to a horizontal parameter, ie to the left, to the center and to the right, together with a vertical parameter, ie at the top, center and bottom.

There is no concept of constraints and it is not possible to use the coordinates to position something. The height and width can easily be set to a certain fixed value related to the content.

This is what also happens with wrap_content and match_content on Android.

How to connect the App to the Smartphone

Starting with WatchOS 2, this connection is performed using the WCSession . In fact, to have simultaneous communication, iOS and WatchOS must create a WCSession instance. Once both sessions are activated, the apps can easily communicate with each other instantly. But if one of these apps has an active WCSession, it can continue to transfer files.

However these actions will only occur in the background and will follow the iOS policy.

This essentially means that you are not sure when they will be implemented, since the operating system will assign times and priorities based on certain criteria.

The steps for creating and activating a session are as follows:

  • Check that the WC Session is properly supported by the operating system;
  • Create a default instance of WC Session;
  • Call the active Session method.

Once these steps are completed, focus on background communications. There are three different ways to establish these communications, namely:

  • Application context;
  • File transfer;
  • User information transfer.

Once you have established communications in the background, you will need to switch to interactive messaging.

If you want the messages to be delivered immediately, you will have to activate the sessions on both devices. To check this, check the status of the device (this is an important step in the development of mobile apps for Apple Watch!).

The associated smartwatch must be correctly connected via Bluetooth to the smartphone and the app must be in the foreground.

Same thing for the smartphone: connect it to the Apple watch via Bluetooth.

After checking the status, you will have two possible distinct methods to call depending on whether you want to switch to NSData or NS Dictionary.

In the case of NS Dictionary, you need to use the session:

  • Received the message: response manager.

In the case of NS Data, you will have the same choices that depend on whether or not you want an answer. You can use the session:

  • Received the message: response manager.


With this brief guide above, you will be able to figure out how to start developing small mobile smartwatch apps.

However you will have to remember that a smartwatch is not a smartphone and that there are several ways to use the application on it.

Generally, owning a smartwatch only means looking at the watch for a few seconds and not using it for a much longer period (like a smartphone). All these aspects will always have to be considered in the development of apps for Apple Watch.

View All Blogs