Expertise

Mobile Applications

Want to deploy your business system in mobile contexts? We're experts in mobile app development!

Smartphones, tablet computers and other mobile devices have proved to be a phenomenal success  – and the technology driving mobile app development is becoming more powerful each year.

Many businesses – including those in industrial and commercial markets – are tapping into the sector's exponential growth and achieving significant benefits by utilising mobile technology. However, deploying custom mobile applications to mobile users involves a unique set of challenges and choices.

This page provides a background on the current mobile technologies available. For a detailed analysis see: Software Development For The Mobile Market.

Types of Mobile App Development

Mobile devices are the fastest-growing enterprise platforms in IT, with custom software development companies like Blueberry designing every possible mobile application to run on tablets and smartphones.
 
The fundamental consideration with delivering bespoke business applications over mobile devices is the wide variety of smartphone and tablet computers, and the ever-increasing number of features each device offers. This consideration is important since mobile apps can be designed in one of two ways - using a Web browser as its destination, or a dedicated app for each mobile device.
 
The advantage of using the Web browser approach is that you don't have to develop a separate application for each platform. Of course, it’s never as simple as that, but we can still write versions of an application for many different platforms using a single language and many pieces of reusable code.
 
With a dedicated app for a particular mobile device, there are cost implications associated with development. At the same time, a dedicated app will almost certainly be better than the performance of an app that has to run through a browser.
 
Depending on what the customer wants, successful mobile app development therefore often involves a combination of technologies and techniques. This is where a diverse skill set, together with an understanding of the mobile landscape, is essential to provide businesses not only with high-quality and relevant development services but also effective and ongoing guidance in this time of accelerating change.
 
The challenges at this stage in mobile technology are mirrored by an ever-increasing range of opportunities for businesses to implement new and improved processes. In general, there are two main approaches to delivering business solutions over mobiles:

Web

The mobile Web has undergone enormous advances over the past few years. According to recent research by the UK telecoms regulator, Ofcom, approximately 66 per cent of adults in the UK are now using smartphones, and around 50 per cent are predicted to be using tablet computers, with the surge being driven by the increasing take-up of 4G mobile broadband, providing faster online access. Many more mobile users now have some kind of internet access thanks to the ubiquity of smartphones and generous data plans. Although the functionality of mobile Web browsers is now on par with their desktop counterparts, there are still considerable hurdles in terms of network connectivity and speed depending on user location – this is expected to improve as LTE becomes more widely available.

Mobile Apps

Mobile applications are software solutions deployed directly onto devices such as tablets and phones - many of these tie into internet services in order to provide extended functionality of a website, although in some cases often the reverse is true where the mobile application is the priority and the website acts as an extension or alternate view into the application.

 
Mobile app development is split between native and hybrid, where the former involves writing code targeting the platform’s compiler. The advantage here is that developers have better access to device instruments, such as GPS, accelerometers, and temperature sensors and can write better performing applications by utilizing, for instance, native graphics or rendering libraries. However, native development requires that developers have to write separate code for each individual platform they wish to target, which increases the burden of knowledge they have to bear, and makes debugging quite painful if for example an error appears on one platform but not another.
 
To help bridge the gap between mobile platforms, the concept of ‘hybrid’ development has taken off recently, where developers instead only have to maintain one codebase which can then be published to each platform. The primary disadvantage here is that a hybrid application tends to run in an abstracted environment, meaning that performance can suffer at times and there is considerably less access to platform specific features as they are introduced, such as 3D touch on iOS. Over time, these disadvantages become less relevant as developers write plugins to cover these shortcomings while manufacturers make gains in device performance, lessening the performance penalty.
 
For relatively simple applications, hybrid would seem to be the future of app development as it allows for easier publishing and maintenance when targeting multiple platforms.
 
Native mobile applications are software solutions deployed directly onto devices such as phones. Many mobile applications link to internet services, with the application, or “app”, handling user interaction natively. Mobile apps have the advantage that they provide a deep level of interactivity that is suited to device hardware – for example, using gestures or sensors like GPS. The difficulty with using mobile applications to deliver business services is the range of platforms in operation.
 
There are currently several dozen leading mobile operating systems on the market. Currently the most widely-used platforms are Android, the open-source system variations of which are used by tech giants such as Google and Samsung, and iOS, which is the proprietary system used by Apple. But while Android and iOS dominate the mobile landscape, Windows Phone, JAVA ME, Symbian, Blackberry and others have significant market share and serious developers do not overlook them, especially when considering the speed at which the market changes.
 
As of 2016, Google and Apple occupy around 92% of the smartphone market, with Windows Phone around 2.5%. With the recent launch of Windows 10 Mobile in 2015 (a major step forward for Microsoft's usually overlooked operating system), it would be unwise to make any predictions about how market share will look even a year from now.
 
In terms of technologies for mobile apps, the list is long, and depends on which platform (or platforms) you choose to target. Among the most commonly used programming languages for mobile applications are HTML5, Java, C++, Objective-C, Swift, and C#. Each of the major platforms has a specific Software Development Kit, with its own tools to help with the design, testing, debugging and deployment. To decide which language is best for mobile development depends on the specifics of the project.
 
However, the complexity of mobile application development is such that targeting even a single platform involves extensive testing. Some businesses maximise development resources by balancing native user interaction with cross-platform resources at the back-end, in which case a mobile app can effectively function as an interface for a Web application.

SMS

Aside from targeting specific mobile platforms through software and Web development, there are additional ways to capitalise on mobile contexts for some business processes – SMS is one such case. In this model, services are delivered as SMS text messages.

This has the benefit of generally working across all phones, and payment can be handled via users' bills – but it’s a very limited form of interaction. SMS also has a problem that message delivery is not guaranteed. Integrating SMS message handling into Web applications is quite simple – and support for processing SMS messages from users is widely available.

About Android

Google's Android operating system has been going from strength to strength over the past few years. Having initially been seen as a platform of interest mainly to geeks, Android is now the #1 smartphone operating system in terms of market share in the UK. Moreover, with the platform's adoption by electronics giants such as Samsung, Android has firmly established itself as the primary operating system of the mobile computing sector – for now at least.

The latest research puts Android usage at around 80 per cent, with iOS adoption at around 18 per cent. These figures from research firm Gartner reveal that the smartphone industry continues to be largely a two-horse race between iOS and Android, with the two mobile operating systems combined for 98.4 percent worldwide market share.

Android's growth is partly down to the openness of the platform, which is available on phones from across the market and from various hardware manufacturers, making it accessible to a more diverse range of users than iPhone, which runs the closed, proprietary iOS system developed by Apple.

Mobile apps available on the Android platform are also subject to very little control, which produces a great deal of variety and flexibility but naturally results in a higher proportion of poor quality applications in circulation.

Google’s approach is the opposite of Apple – which retains total control over its mobile phone operating system. Google’s initial idea was to make a new phone operating system which would be open and free. Their hope was that this would encourage innovative development of both phones and applications. Google has invested in Android because it expected that Web searches would increasingly happen on mobiles, and it wanted to be able to advertise to mobile users.

Although Google's position within the mobile world seems very strong right now, it is still difficult to say how things are going to progress.

The Android system is offering a good level of integration with business services such as Microsoft Exchange, and the open nature of the platform makes integrating with existing enterprise applications relatively straightforward for developers.

About iPhone

The iPhone was of course in a dominant position as the advance of the smartphone took shape, and the platform is still in a very powerful place. Although business users tended toward BlackBerry in the past, both iPhone and Android have continued to make considerable headway in enterprise as well as consumer markets.

The iPhone offers support for external business utilities such as Microsoft Exchange and, unlike Android, iPhone apps are subject to serious vetting by Apple themselves before users can deploy them – and even then, they can only buy the app through Apple's App Store. The natural downside to this heightened level of control over the platform as a whole is a lack of flexibility. But for business applications the plus side is a virtual guarantee of quality and reliability for the end user – and ultimately for any business processes being implemented through the technology.

With the hugely popular visual designs and interaction models Apple is famous for, the iPhone is certainly an attractive platform for commercial applications. Apple has been responsible for developing innovative features whose success has prompted other platforms to emulate them, such as multi-touch interaction and Apple Pay.

Blueberry has the Objective C and hybrid development skills necessary to develop iPhone programs, and we would be very interested in discussing this with customers.

Although iPhone has lost considerable smartphone ground to Android and other competitors, it is generally still seen as the platform to beat, and continues to be a market leader in many ways.

About RIM Blackberry

RIM's Blackberry platform was long regarded as the mobile system of choice for business and professional users, despite the challenges the company has faced in the past. In 2013, the company changed its name from Research in Motion (RIM) to BlackBerry and has since launched a range of touch-screen devices. Current Blackberry devices are widely embraced by business organisations and offer good support across iOS, Android, and Windows Phone. Moreover, in the past few years Blackberry has grown out of the business sector and made significant advances in the consumer market, introducing smartphones and tablets that have proven popular, powered by the BlackBerry 10 operating system.

Like Android, BlackBerry hardware is varied, so users can access mobile sites and applications via differing screen sizes and controls – increasing the complexity in any development project. The BlackBerry platform delivers a wealth of enterprise services as standard, with BlackBerry Enterprise Server seen as a major asset for corporate users. Email on BlackBerry is particularly strong, so users who are dependent on a high level of security and reliability in messaging (and communications in general) naturally tend towards this platform.

While iPhones are focused on touchscreen interaction, as are Android devices to a slightly lesser degree, BlackBerry devices offer both touch and keyboard inputs. This can be an important aspect in the potential of the platform for certain application categories.

A possible issue for mobile Web applications targeted at BlackBerry is that the Web browsers on the system have, in the past, been significantly less advanced than those on both iPhone and Android. However, more recent models have addressed this issue.

Native apps can be deployed through the BlackBerry App World marketplace, which has, to date, not occupied as central a role for users as the app stores on iPhone and Android, although the brand is clearly focusing extensive efforts on developing this aspect of usage. However, it should be noted that newer Blackberry phones have the ability to run Android apps in addition to apps developed for Blackberry.

About Windows Mobile

Windows Mobile 1 represents Microsoft’s most ambitious foray into the mobile world. At a stroke the company has streamlined its entire range of offerings and combine them all into the Windows 10 platform.

The move has been welcomed by the market because it trims Microsoft's product range and makes it easier to understand and explain – where there was Windows Mobile, Windows Phone and Windows Other, now there's just simply Windows 10. The company hopes this – along with its accompanying technological advances – will lead to an improvement in its market position. Microsoft has enjoyed varying degrees of success in the consumer and industrial mobile markets.

For consumers, high-end smartphone brands such as HTC and LG are producing mobile devices with the Windows 10 operating system deployed on them, with networks including O2 and Orange providing mobile services. Nokia and Windows have reached a major deal in which the manufacturer is dropping its Symbian platform entirely to focus on Windows as its operating system of choice.

Microsoft is continuing to invest in developing its mobile operating system and hopes to improve its market position within the mobile world. Apart from the partnerships with Nokia and other companies, Microsoft is increasing its support for HTML5. While it may find itself in a market position to which it is unaccustomed, Microsoft is determined to increase its share.

With a massive user base acquired through its status as the pre-eminent desktop computer operating system, Windows 10 is a natural choice for many mobile workplace needs, including such things as warehouse and delivery services.

From a development perspective, Windows 10 has very strong advantages. Microsoft has provided a rich platform of development tools – including the C# language. Additionally, Microsoft’s recent purchase of Xamarin, a hybrid development toolset allowing developers to write C# applications for all mobile platforms, demonstrates their strong commitment to the mobile space.

Microsoft also includes tools for communication between software on the phone and central servers, and they even include a small database engine. The strong development tools and wide availability of different devices make Windows a particularly valuable platform for delivering business applications.

At Blueberry we have a uniquely high level of expertise on Windows systems for mobile app development, so we are well positioned to deliver solutions on this platform.

Mobile Solutions

Blueberry has the development skills to build and deploy custom applications targeted at any of the mobile platforms and hardware manufacturers in use today, having developed a diverse range of mobile projects, including many on Windows. Our custom software development team is also well placed to provide tailored approaches involving multiple technologies and programming languages where necessary.

With our skills in Web and client-server development, we can design a complete system that integrates field staff and office workers. Whatever your business process or context, Blueberry has the expertise to provide bespoke, comprehensive solutions to mobile integration, enhancing not only communication but also efficiency and productivity.