Blog

Mobile App Development (2)

17th July 2011

Following on from last week’s app discussion, there are a number of factors that need to be taken into account when developing mobile web apps. These apps are completely different to the development of old native apps where developers could focus resources on building an application for one particular platform. When building web apps, we need to consider the following:

Various platforms. There are already a number of big players (including Android, iOS, Blackberry, Windows Mobile, WebOS…) and plenty of smaller ones. Developers need to make sure not only that the web app will work across all these platforms but that usage is comparable in look and feel to native apps running on those platforms.

Screen size. Different devices come in varying screen sizes, regardless of the platform. There are desktop and tablets with high resolution, smartphones with big touch screens, and ordinary mobile phones with small screens and traditional keypads. Developers need to ensure the app will have the same functionality on all these different devices with the best layout for each screen size. It is also important to take into account both horizontal and vertical views.

Interaction styles. There are several ways users can interact with web apps. Desktops need a mouse and keyboard, (most) mobiles will have a keypad, and modern smartphones will work via a touchscreen. As mentioned in last week’s blog, touch is the most natural method for humans and apps should use a variety of touch combinations to give the best user experience possible. However, the app should also offer the same functionality when running on devices controlled by mouse or keypad.

Speed. When building web apps developers need to be aware that people expect the web apps to work as fast as the native apps. Speed is crucial in today’s fast-paced society and mobile apps are no exception.

Working offline or with poor connection. Web apps should always work, regardless of dodgy internet connections. Developers need to implement a variety of caching solutions to cover situations where there may be no or bad internet connectivity.

smartphone apps

When building a web application, which we expect to work across various devices, we need to build an interface on top of the core of the application. This interface needs to react and render various content depending on which type of the device the user is using. Below are the two most common technologies developers can use to help achieve this.

HTML5, CSS & JS. Developers can use HTML5 when building a web app, which has plenty of great features to help tackle the problems above.

Mobile JS frameworks. Developers can use some great JavaScript frameworks (like jQuery Mobile or SenchaTouch), which can turn existing web apps based on HTML into great mobile apps working across a range of modern platforms.

For those developers looking for more information, the following links will direct you to a number of great tools and libraries:

Related Articles

clock
Page Speed

20th April 2016

The time it takes a web page to load should an integral element of your website’s SEO strategy as it is now an increasingly important Google ranking factor. Page Speed matters from both a search engine perspective and from a user perspective, particularly on mobile and tablet. Having first announced in 2010 that page load […]

crystal-ball
Digital Crystal Ball for 2016

27th January 2016

Many of the digital trends we expect to see in 2016 are a development of the work Crush are already doing, but in the next 12 months the new developments will come into their own. There are also plenty of old constants too which can’t be forgotten and remain as important as ever. Below are […]

captchas-101
Captchas 101

28th December 2015

Regular web users will have seen a CAPTCHA or two in their time. Site owners will have probably come up against the reason for the CAPTCHAs invention – spam bots. Highly sophisticated and designed to wreak havoc across the web, spam bots can become a real issue for web administrators which is why tools have […]