share

ENGINEERING

5min read

5 Steps for painless integration of your app with a smartwatch

1. Zero in on the context

When we start to work with a client on an app designed to support smartwatches, our first thing to keep in mind is that the context of using a watch and a phone is completely different and our goal isn’t at any point to port the phone app with all its functionality to a small (at most 2”) screen. Ok, so now we know what not to do, but how you should think of use cases for your smartwatch app? The answer is simple: the user opens the app with a very particular goal in mind and we need to allow him to achieve it as quickly and easily as possible. We do this by creating an action driven app. Further, the user needs to be able to continue at any time to their phone and back without starting over each time. Our goal is to create continuity between those two devices. It is also good to remember that the watch can delegate some functions to the phone, e.g. showing article titles and lead can be done on the watch, but reading the whole article should be done on a “normal size screen” – whatever that means for that user. “Design for the corner of the eye” – this is really important Android guidelines advice. Users won’t be, and shouldn’t be, immersed into a smartwatch app. They will use it to keep abreast with updates like emails or friends’ social statuses or maybe taxi position. Additionally, users will complete singular actions like pausing music. It’s a more passive interaction than performing multi-step actions on mobile; the interaction is low. Users may be annoyed with too frequent vibrations as they have the device on their hand constantly. Be sensitive about that.

Android Wear

Android Wear

2. Choose a platform. Wisely.

Before you move to drawing mockups of your app, it is crucial to choose the platform that you will aim for. For any mobile-related person it shouldn’t come as a surprise but design on both Apple Watch and Android Wear devices are in many places very different, which is why using the same patterns won’t work seamlessly. Also take into account programing possibilities on both platforms on Android you can run background process and for example monitor users heart rate, check location etc. just be sure not to drain battery. Also Android Wear platform allows you to run apps when phone is not connected to watch, be sure to handle that case and for example to disable part of your UI which depends on the phone connection. On the Apple Watch on the other hand app will be in such situation closed because core part is running on your phone and watch is only presenting UI.

Then… cut all the functionality that is not crucial to have on your wrist. Seriously. If your app is a notepad, it will be enough to just keep adding new notes and browsing past notes, without deleting, editing, sharing to friends etc. Just remember what we have mentioned previously - your notes should be synchronized in the background between your devices.

Wear Polidea

Wear Polidea

3. Get back to basics with the interface

Once you get to UI, don’t even try to copy mobile phone patterns to smartwatch. The UI structure varies between systems as well. It’s good to be updated with the system guidelines, as users are familiar with native patterns. While designing for Andorid, navigation should be vertical-then-horizontal. On Apple Watch choose one of the two patterns: hierarchical, where users navigate by making one choice per screen or page-based, where users swipe horizontally to navigate. On Android, the rule is doing one thing per screen mostly, while Apple is not that restrictive. When it comes to resolutions, it’s not easy, both for Android and iOS. Keep in mind that some of Android smartwatches are round which makes the content display differently. It is good to consider even creating a separate design for round shaped watches to get most out of it. It’s important to do mockups, because these screens are unintuitively small for designers. Even print out the screen in real size and simulate the interaction with a fake smartwatch on your hand. You’ll probably find you’ll have to double the size of all assets! And what about gestures? Apple watch has built in digital crown that is worth to remember. Using it means the user is not covering lists while scrolling longer pages. Unfortunately, thus far we can’t use it for anything else but scrolling. Another interesting Apple watch gesture you can use is force touch, which activates contextual menus.

4. Be smart with implementation

After this entire process you come to the point where you need to implement that design. This is why it is so important to be aware of all system limitations the during whole process of creating the app. First, you need to take into account some of the limitations of wearables – in Android Wear, for example, we cannot directly access the Internet, but have to use the phone as a proxy. To achieve this you can integrate WearHttp Android library, this brings us to the topic of speeding up development by utilizing some libraries, most useful for us were such as: BusWear (passing objects phone<->watch), ExceptionWear (handling crashes on a smartwatch), ShapeWear created by Michał Tajchert one of our engineers that worked on smartwatches projects.

On Apple Watch there are several limitations due to UI components: we can only used a limited number of them, while on Android we can even use custom Views. Another big difference is that Apple Watch app runs on the phone, while Android Wear runs natively on your wrist and you need to take care of all the data transfer between phone and watch. MWWormhole is library that can help you in such cases.

5. Be fast

In 2014 we have seen dozens of smartwatches and this year is probably not going to be different. As a software creators we should keep pace with continously changing wearables, no matter how fast it is. So launch your design tools and favorite IDE and start being creative in the brand new form factor of a mobile device! Remember that in significant number of features you want to have on your watch, you can reuse your existing mobile application logic. Just make sure to know which functionalities are essential on your wrist as officiousness can ruin whole experience.

share


MichałSoftware Engineer
MichałLead Software Engineer
KarolinaHead of Design

LEARN MORE

Contact us if you have any questions regarding the article or just want to chat about technology, our services, job offers and more!

POLIDEA NEWSLETTER

Sign in and expect sharp insights, recommendations, ebooks and fascinating project stories delivered to your inbox

The controller of the personal data that you are about to provide in the above form will be Polidea sp. z o.o. with its registered office in Warsaw at ul. Przeskok 2, 00-032 Warsaw, KRS number: 0000330954, tel.: 0048 795 536 436, email: hello@polidea.com (“Polidea”). We will process your personal data based on our legitimate interest and/or your consent. Providing your personal data is not obligatory, but necessary for Polidea to respond to you in relation to your question and/or request. If you gave us consent to call you on the telephone, you may revoke the consent at any time by contacting Polidea via telephone or email. You can find detailed information about the processing of your personal data in relation to the above contact form, including your rights relating to the processing, HERE.

Data controller:

The controller of your personal data is Polidea sp. z o.o. with its registered office in Warsaw at ul. Przeskok 2, 00-032 Warsaw, KRS number: 0000330954, tel.: [0048795536436], email: [hello@polidea.com] (“Polidea”)

Purpose and legal bases for processing:

 

Used abbreviations:

GDPR – Regulation (EU) 2016/679 of the European Parliament and of the Council of 27 April 2016
on the protection of natural persons with regard to the processing of personal data and on the free movement
of such data, and repealing Directive 95/46/EC (General Data Protection Regulation)

ARES – Polish Act on Rendering Electronic Services dated 18 July 2002

TL – Polish Telecommunications Law dated 16 July 2004

1)        sending to the given email address a newsletter including information on Polidea’s new projects, products, services, organised events and/or general insights from the mobile app business world |art. 6.1 a) GDPR, art. 10.2 ARES and art. 172.1 TL (upon your consent)

Personal data:name, email address

2)       statistical, analytical and reporting purposes |art. 6. 1 f) GDPR (based on legitimate interests pursued by Polidea, consisting in analysing the way our services are used and adjusting them to our clients’ needs, as well as developing new services)

Personal data:name, email address

Withdrawal of consent:

You may withdraw your consent to process your personal data at any time.

Withdrawal of the consent is possible solely in the scope of processing performed based on the consent. Polidea is authorised to process your personal data after you withdraw your consent if it has another legal basis for the processing, for the purposes covered by that legal basis.

Categories of recipients:

Your personal data may be shared with:

1)       authorised employees and/or contractors of Polidea

2)       persons or entities providing particular services to Polidea (accounting, legal, IT, marketing and advertising services) – in the scope required for those persons or entities to provide those services to Polidea

 

Retention period:

1)       For the purpose of sending newsletter to the given email address – for as long as the relevant consent is not withdrawn

2)       For statistical, analytical and reporting purposes – for as long as the relevant consent is not withdrawn

Your rights:

 

Used abbreviation:

GDPR – Regulation (EU) 2016/679 of the European Parliament and of the Council of 27 April 2016
on the protection of natural persons with regard to the processing of personal data and on the free movement
of such data, and repealing Directive 95/46/EC (General Data Protection Regulation)

According to GDPR, you have the following rights relating to the processing of your personal data, exercised by contacting Polidea via [e-mail, phone].

1)       to access to your personal data (art. 15 GDPR) by requesting sharing and/or sending a copy of all your personal data processed by Polidea

2)       to request rectification of inaccurate personal data
(art. 16 GDPR) by indicating the data requiring rectification

3)       to request erasure of your persona data (art. 17 GDPR); Polidea has the rights to refuse erasing the personal data in specific circumstances provided by law

4)       to request restriction of processing of your personal data (art. 18 GDPR) by indicating the data which should be restricted

5)       to move your personal data (art. 20 GDPR) by requesting preparation and transfer by Polidea of the personal data that you provided to Polidea to you or another controller in a structured, commonly used machine-readable format

6)       to object to processing your personal data conducted based on art. 6.1 e) or f) GDPR, on grounds relating to your particular situation (art. 21 GDPR)

7)       to lodge a complaint with a supervisory authority,
in particular in the EU member state of your habitual residence, place of work or place of the alleged infringement if you consider that the processing
of personal data relating to you infringes the GDPR
(art. 77.1 GDPR)

No obligation to provide data:

Providing your personal data is not obligatory, but necessary for Polidea to provide you the newsletter service

Refusal to provide the above data will result in inability to receive the newsletter service.

Profiling

In the process of providing the newsletter service, we make decisions in an automated way, including profiling, based on the data you provide.

 

“Profiling” means automated processing of personal data consisting of the use of your personal data to evaluate certain personal aspects relating to you, in particular to analyze or predict aspects concerning your personal preferences and interests.

 

The automated decisions are taken based on the analysis of clicked and viewed content. They affect the targeting of specific newsletter content to selected users registered to receive the newsletter service, based on the anticipated interests of the recipient.