Limitations for Apple Watch App developers
While the Apple Watch has strong potential to become a revolutionary product that changes our daily lives, creating apps for watchOS is still provides challenges for developers to complain about.
#1. Apple doesn’t share their framework
One of the reasons iOS became such a success is that back in its second year, developers got the access to the native framework that Apple uses. After this access, the development of iOS apps took off and has grown into what it is today.
With the watch, however, Apple does not tend to share the framework they use. Thus, developers are forced to use WatchKit, a development tool that, by its functionality, seems to be stuck in the 80s.
This limitation would be resolved if Apple decided to reveal the native algorithms instead of offering a third-party solution unfit to create the Watch App Architecture.
#2. There has to be an iPhone nearby
A fair share of companies would love to use Apple Watch to collect more user data, provide a better connection to their client, or introduce an innovative service.
What might be holding developers back? The thing is, Apple Watch needs an iPhone like an umbilical cord. There are basic things one can do with nothing but the Watch (playing music, for instance). However, when it comes to more complex third-party apps, there’s a long way to go before WatchKit allows developers to create Apple Watch app features to their specifics.
#3. Different Watch dimensions
In September 2018, Apple dropped its new Apple Watch 4 which comes in two new screen sizes - 40 mm (324x394 pixels), and 44 mm (368x448 pixels). Add to that two original Apple Watch screen sizes of 38 mm (272x340 pixels) and 42 mm (312x390 pixels) and you will get a total of four options.
This creates a ton of limitations for Apple Watch app developers. To name a few, Apple Watch apps developed via XCode 9 do not recognize 40 and 44 millimeter watches. How do developers deal with this problem? For one, there’s a fair share of third-party adaptivity tools that can help you make sure the app looks alike on all Apple Watch dimensions.
Another way out is to use scalable graphics - two-dimensional graphics with interactivity support that allows them to appear effectively at different sizes.
#4. Memory limitations
While the officially declared storage capacity of Apple Watches is 8GB, in reality, a huge chunk of this space is taken by Apple’s internal apps. That leaves developers little-to-no memory to work with, considering the fact that most users also use Apple Watch to download music.
Memory constraints challenge developers to think in a creative way - such as image compression, using a server for sharing data that can be downloaded after the app is already installed.
#5. Short battery life
There have been plenty of reports that the Apple Watch battery is far from decent and the charge runs out in a matter of a few hours. However, in order to keep the wearable up and running, users have a ton of hacks - disabling notifications, turning off Bluetooth, turning off any apps not being used at the moment, etc.
With battery charge being such a major concern, it’s dubious that users will want to use an app that uses too much power. That leaves developers constrained and in search of new ways to make the apps less energy-consuming.
#6. No way for third-party applications to display animation
Native Apple Watch apps are quite famous thanks to their animations. The feature can make the user experience more fun and engaging. But when it comes to creating animation by third-party developers, there is no software option that Apple has to offer. All of the basic effects users have come to know - the parallax effect, transitions between complications, and many more - can’t be implemented.
The only solution developers can find is to animate images frame-by-frame. Needless to say, it strains the timeline of development enormously as well as limits the movement range of the animation itself.
#7. No third-party access to Force Touch
When first presented by Apple, the Force Touch feature was considered revolutionary. The watch uses built-in electrodes to distinguish between a slight touch and a deep press, that is, when it comes to native watchOS apps.
Third-party developers don’t get to benefit from the technology as much - in a third-party application for Apple watch, Force Touch can only pull up a contextual menu.
Apple Watch app development process
If you’re up to the challenge of investing time and effort into developing for Apple Watch, it’s crucial to outline the steps of WatchKit development.
Step 1. Install XCode with WatchKit support
As we’ve uncovered already, developers use WatchKit to create an app for Apple Watch. In order to develop an app for Apple Watch, you need to download the version of XCode that supports WatchOS. You can get the latest version in the Apple Member Center.
Step 2. Creating an XCode project
The next step in developing an app for WatchOS is creating a new project. Choose a “single-view application” template in order to start development.
There are a few basic settings to decide on:
- the programming language: either Swift or Objective-C
- devices you want the app to interact with
- a directory for a new project
Once the project is created, the developer can start writing an app from scratch.
Step 3. Add Apple Watch as a target
In order to choose Apple Watch as a development target, in your XCode window, choose File -> New -> Target -> Apple Watch -> WatchKit App. Later, one has to choose the development language, decide on whether or not to use Glances and Notifications models.
Step 4. Creating a WatchKit life cycle
The next step in Apple Watch app development is creating a life cycle. Here are the steps a life cycle may include:
- Display UI
- Initialize UI
- Load the initial interface controller
- Launch the app
Step 5. Creating a storyboard
Designing a WatchKit app comes with creating a storyboard. You can do this using the WK Example WatchKit app.
Step 6. Running a finished app
As soon as the code is written, the UI is created, and the entire app is storyboarded, it’s time to run a finished Apple Watch app.
Apple Watch Development Cost
Seeing that Apple Watch apps are not very sophisticated, it takes relatively little time to develop one. The average time needed for App Programing for watchOS is 8 weeks.
8 weeks of work (taking into account a five-day week) equals 320 working hours.
The cost of development will vary depending on your hiring strategy. You can either scour for local talent or outsource to a cheaper destination. Here are the rates of iOS developers all over the world:
- USA: $160 per hour
- Australia: 160 AUD per hour
- India: $25 per hour
- EU: $150 per hour
- New Zealand: 180 NZD per hour
- Ukraine: $50 per hour
Summing it all up, here's how much it costs to develop an apple watch app in different countries:
|Country||The cost of an Apple Watch App created in 320 hours by one developer|
|New Zealand||57,600 NZD|