Cross-platform Solution for Development of Mobile Applications
Gatis Vitols
1
, Ingus Smits
2
and Oleg Bogdanov
3
1
SIA "IT kompetences centrs", Lacplesa 41, Riga, Latvia
2
Faculty of Information Technologies, Latvia University of Agriculture, Liela 2, Jelgava, Latvia
3
Ecommerce Accelerator, Skanstes 54, Riga, Latvia
Keywords: Mobile Applications, Development Frameworks, Styling Tools.
Abstract: Mobile devices are one of the most popular devices for access to web applications. Problems that arise in
development process of mobile web applications are the same as with desktop applications. One of the
fundamental problems in both cases is cross platform development. At the moment three mobile application
development methods can be identified: web-based, native and hybrid. When developing business
applications, hybrid application development framework can be most appropriate. From evaluated hybrid
application development frameworks and styling tools Adobe PhoneGap with JQuery Mobile have the
highest compliance to the criteria researched in this study.
1 INTRODUCTION
Smart phone market is growing rapidly and so does
the count of different applications that can be
executed on them. Companies targeting those
markets must overcome different challenges such as
integration into central application distribution
models and ensurance of product correspondence to
quality and content requirements.
Problems that arise in development process of
such applications are the same as with desktop
applications. One of the fundamental problems in
both cases is cross platform development.
Typical solution for this matter is single
codebases applications developed with web and
mobile web technologies. Various application
development researchers bring forward advantages
and disadvantages of mobile web technologies. For
example there is a statement (Na, 2011) that
developing cross-platform mobile web applications
with a single codebase is one strategy that allows
organizations to stay ahead of the mobile curve.
When taking into consideration rapid mobile
operation system development and principles of the
mobile market that allow platform developers to
change the rules of distribution of mobile
applications, single codebase solutions that allow
deploying applications on multiple platforms
becomes an important matter. Use of mobile web
technologies not always satisfies functionality
demands of developed application. For example
developed applications cannot access all supported
platform services and devices, such as contacts,
messaging, compass and others. It is concluded that
current versions of mobile browsers have some
functional limitations, but rapid development of
mobile technologies allow to overcome many of
these limitations (Na, 2011).
It is already seen that advances in web
technologies and device capabilities have created
alternative application development technologies
that are web-based, use proprietary middleware and
clients, or are a hybrid of webkit and native
applications. At the moment the hybrid approach
provides the best trade-off (Myer, 2012).
At the moment three mobile application
development methods can be identified: web-based
native and hybrid (Fig. 1). As it can be seen from
Figure 1, web-based applications are most restricted.
Hybrid and native ones can provide access to almost
all functionality of mobile operation system
(Beckman, 2012). In practice, hybrid applications
has still more restrictions compared to native ones.
However, these restrictions can only be identified
when developing certain type and requirement
applications, such as gaming applications.
For example native applications still can have
several features that are difficult to "imitate" by web
applications and some hybrid applications, such as
complex 3D graphics or the management of device
273
Vitols G., Smits I. and Bogdanov O..
Cross-platform Solution for Development of Mobile Applications.
DOI: 10.5220/0004448302730277
In Proceedings of the 15th International Conference on Enterprise Information Systems (ICEIS-2013), pages 273-277
ISBN: 978-989-8565-60-0
Copyright
c
2013 SCITEPRESS (Science and Technology Publications, Lda.)
Figure 1: Mobile device functionality access possibilities
with different application development methods.
hardware components such as sensors (Gossweiler et
al., 2011).
While developing application developers must
take in mind mobile device’s limitations (resources,
input possibilities, screen features, etc.), must realize
marketing requirements for application deployment
and modelling, as well as distributors, providers,
technologies providers and end user relations
(Corral, Janes, et al. 2012).
2 MATERIALS AND METHODS
To identify cross-platform mobile applications
development solution it is important to determine
target platform preference. Depending on the target
devices, the application can be either cross-platform
or developed for dedicated or native platform
(Christ, 2011).
Basically most of existing platforms use different
programming languages. For example, Apple iOS
use Objective-C, Android and RIM use variations of
JAVA, Windows Phone 7 use C# and so on. To
develop cross-platform applications there should be
either professional developer available who can
work with these languages and have environment or
solution for creation of mobile cross-platform
applications.
Another important point is to develop use cases,
which basically requires determination of potential
users and functionality of application. Applications
that are running on mobile devices involve vast
range of types: communication, entertainment,
business, media and others (Corral, Janes, et al.
2012). For example gaming application will have
different functionality requirements than business
application.
In practical development for creation of hybrid
or mobile web applications basic web systems can
be translated into mobile applications using:
Framework, such as Appcelerator, MoSync,
KonyOne, PhoneGap, RhoMobile, Corona and
others.
Styling tools, such as JQTouch, DojoMobile,
JQuery Mobile, DHTMLX Touch,
SenchaTouch, and others.
Multiple criteria can be brought forward for
selection of frameworks and tools that would allow
creating such cross-platform solution. We propose
that one of the basic criteria should be extensibility
of developed solution. Therefore tools that are
chosen should satisfy basic extensibility matters and
follow such criteria:
Multiple platforms.
Single codebase.
Tools (plug-in) repositories.
Main stream tool.
Open source.
Functionality.
Solutions should support multiple platforms. As
minimum support for largest shareholders in the
market (Christ, 2011):
Android, Apple iOS, RIM
(BlackBerry), Windows Phone 7 and Symbian.
However Symbian will loose it's share, because
producer of this platform Nokia announced that they
discontinue the mobile operation system (Islam
2013).
Solutions should be single codebase. It is
considered that managing several code sets creates
considerably extra work, which translates to
increased development time and a greater
probability of code errors (Myer, 2012).
Size and existence of tools (plug-in) repositories.
This criteria also directly relates to extensibility of
solutions as if there is no or low activity in
production of tools (plug-ins) by owners or third
party producers, it can be a sign of low extensibility.
ICEIS2013-15thInternationalConferenceonEnterpriseInformationSystems
274
Main stream tool. For example it can be
evaluated with measuring size of community, count
of bug fixes, count of updates, and count of
responses to submitted problems.
Open Source is another criterion that may not be
obligatory, but could be beneficial if the developed
solution is based on open source tools and
technologies. Open source solution also partly relate
to satisfying demand for extensibility. A widely used
and supported licence type is also beneficial, such as
GNU General Public License (GPL) or MIT license
(MIT).
Functionality relates to which mobile device
features are supported by selected tools. Typical
mobile device features include contacts,
accelerometer, camera, compass, files, geolocation,
media, network, storage, barcode scanner, alert
notifications, sound notifications, etc (Corral, Sillitti,
et al. 2012).
3 SOLUTION IDENTIFICATION
FOR BUSINESS APPLICATION
As for typical application profile we chose simple
business applications that include catalogue of
services, graphical details and functionality to
perform simple monetary deals.
Criteria for framework:
1. Supported platforms: Android, Apple iOS, RIM
(BlackBerry), Windows Phone 7.
2. Single code base solution.
3. Size of tools (plug-ins) repository. As count of
published tools (up to February 1, 2013).
4. Count of updates (up to February 1, 2013).
5. Count of registered members in the community
(up to February 1, 2013).
6. Open source solution.
7. Supported mobile device functions:
accelerometer, contacts, camera, files,
geolocation, media, network, storage, barcode
scanner, alert notifications and sound
notifications.
Leading and often mentioned (Christ, 2011;
Corral, Janes, et al., 2012; Espada et al., 2012;
Corral, Sillitti, et al. 2012; Newman, 2011) hybrid
application development frameworks are
RhoMobile, Corona, Appcelerator and PhoneGap.
We performed evaluation of those frameworks
compliance to criteria.
Based on performed analysis (see Table 1) it can
be seen, that highest compliance to criteria reach
Adobe PhoneGap.
Adobe PhoneGap other advantage are that
applications are built using common web
technologies such as HTML and CSS (Myer, 2012).
For example, RhoMobile requires knowledge of
Ruby language. However, Adobe PhoneGap main
disadvantages include, application is rendered using
platform’s web browser engine, not individual native
user interface objects and each mobile platform
requires installing appropriate SDK.
Another part of typical development process is
application styling. In a lot of cases it has same
importance as functionality of developed
application. There are several possible solutions
available that contribute application development
with hybrid development method. Popular and often
mentioned ones are JQTouch, JQuery Mobile,
SenchaTouch, DojoMobile (Corral, Sillitti, et al.
2012; Firtman, 2012).
In most cases these solutions physically are
JavaScript libraries that have to be added to the
developed application.
Table 1: Identification of hybrid framework for
development of business applications.
Criterion
No.
RhoMobile
Corona
Appcelerator
PhoneGap
1. + - - +
2. + + + +
3. N/A 22 N/A 77
4. 6 N/A 10 16
5. 2716 N/A N/A 15095
6. - - - +
7. + + + +
Criteria for styling solutions:
1. Size of tools (plug-ins) repository. As count of
published tools (up to February 1, 2013).
2. Count of updates (up to February 1, 2013).
3. Count of registered member topics in the
community (up to February 1, 2013).
4. Open source solution.
5. Footprint, which is the size in KB of script
code. This criterion has importance on
execution speed of particular solution as script
is loaded into memory before starting to
execute functions of the script.
Table 2 shows comparison of identified solutions.
Based on performed analysis of styling solutions
(see Table 2) it can be seen, that highest compliance
to criteria reach JQuery Mobile. Main benefits of
this framework are the plug-in repository, longer
Cross-platformSolutionforDevelopmentofMobileApplications
275
Table 2: Identification of styling solution for business
application.
Criterion No.
JQTouch 1.0
JQuery Mobile
1.2.0
SenchaTouch
2.1.1
DojoMobile
1.8
1. N/A 16 N/A N/A
2. N/A 33 11 8
3. N/A 9648 62624 21532
4. + + - +
5. 10.9KB 110KB 94KB 152KB
update history and it's an open source solution.
However it has larger footprint compared to
SenchaTouch and JQTouch.
MOBILE DEVICE
DATA STORAGE SOLUTIONS
SYSTEM DEVICES
ACCELEROMETER CAMERA COMPASS
GPS
FILE
SYSTEM
NATIVE
DATABASE
OTHER DATA
STORAGE
SOLUTIONS
OTHER
SYSTEM SERVICES
NOTIFICATIONS
& MESSAGING
CONTACTS
CALL
SERVICES
OTHER
DATA
SERVICES
HYBRID APPLICATION
Figure 2: Proposed cross-platform solution for
development of mobile applications.
SenchaTouch have also high compliance to the
criteria, but one of the main drawbacks is unclear
existence of plug-in repository and that it is mainly
commercial solution.
From the analysis of solutions presented in Table
1 and Table 2 it is possible to propose cross-platform
solution for development of mobile applications (see
Fig. 2).
It is also mentioned that Adobe PhoneGap and
very well can be integrated with jQuery Mobile
(Firtman, 2012).
4 CONCLUSIONS
Hybrid and native applications can provide access to
almost all functionality of mobile operation system.
When developing business application, hybrid
framework is most appropriate.
From compared hybrid application development
frameworks, Adobe PhoneGap has highest
compliance to criteria that is brought forward in this
research.
Main benefits of PhoneGap include open source
licence, wide mobile platform support and large
repository of tools (plug-ins). However, as
PhoneGap has been acquired by Adobe, there is a
concern about possible licensing change from open
source to commercial for this framework.
From compared hybrid application development
styling tools, JQuery Mobile is most appropriate.
Main benefits of this styling framework include
existence of plug-in repository, longer update history
and it's an open source solution.
For future research it is still an open discussion
about hybrid solutions ability to produce cross-
platform applications that feel and looks like native
ones.
ACKNOWLEDGEMENTS
Research is part of project „Competence centre of
information and communication Technologies” run
by IT competence centre, contract No. L-KC-11-
003, co financed by European Regional
Development Fund.
REFERENCES
Beckman, M., 2012. Native, Web, or hybrid: How to
choose your mobile development path. Available at:
http://www.infoworld.com/d/application-
development/native-web-or-hybrid-how-choose-your-
mobile-development-path-204079 [Accessed January
26, 2013].
Christ, A., 2011. Bridging the Mobile App Gap. Sigma
Journal, 11(1), pp.27–32.
Corral, L., Janes, A. & Remencius, T., 2012. Potential
Advantages and Disadvantages of Multiplatform
Development Frameworks–A Vision on Mobile
ICEIS2013-15thInternationalConferenceonEnterpriseInformationSystems
276
Environments. Procedia Computer Science, 10(1),
pp.1202–1207.
Corral, L., Sillitti, A. & Succi, G., 2012. Mobile
Multiplatform Development: An Experiment for
Performance Analysis. Procedia Computer Science,
10(1), pp.736–743.
Espada, J. P. et al., 2012. Extensible architecture for
context-aware mobile web applications. Expert
Systems with Applications, 39(10), pp.9686–9694.
Firtman, M., 2012. jQuery Mobile: Up and Running,
Sebastopol: O’Reilly Media, Inc.
Gossweiler, R. et al., 2011. Argos: Building a Web-centric
Application Platform on Top of Android. Pervasive
Computing, 10(4), pp.10–14.
Islam, Z., 2013. Nokia Discontinues Symbian, Once a
Leading Smartphone OS. Available at:
http://www.tomshardware.com/news/Nokia-Symbian-
Operating-System-Smartphones,20705.html [Accessed
February 5, 2013].
Myer, T., 2012. Beginning PhoneGap, Indianapolis: John
Wiley & Sons, Inc.
Na, D., 2011. The What, Why, and How of Mobile
Applications. Noblis Sigma, 11(1), pp.20–26.
Newman, B., 2011. Are Cross-Platform Mobile App
Frameworks Right for Your Business? , pp.49–53.
Available at: http://mashable.com/2011/03/21/cross-
platform-mobile-frameworks/ [Accessed January 11,
2013].
Cross-platformSolutionforDevelopmentofMobileApplications
277