Analysis of Cross-Platform Development Frameworks for a Smartphone Pediatric Application

Similar documents
Lecture 4 Cross-Platform Development. <lecturer, date>

Mobile App Infrastructure for Cross-Platform Deployment (N11-38)

Bridging the Gap: from a Web App to a Mobile Device App

SYST35300 Hybrid Mobile Application Development

Mobile Development Frameworks Overview. Understand the pros and cons of using different mobile development frameworks for mobile projects.

Issues of Hybrid Mobile Application Development with PhoneGap: a Case Study of Insurance Mobile Application

Cross-Platform Development: Target More Platforms and Devices with a Minimal Amount of Source Code

Cross-Platform Tools

Comparison of Cross-Platform Mobile Development Tools

Evaluating Cross-Platform Development Approaches (WORA Tools ) for Mobile Applications

Cross-Platform Mobile Application Development

COMPARISON OF CROSS-PLATFORM MOBILE DEVELOPMENT TOOLS

Rhomobile cross-platfrom

How to Choose Right Mobile Development Platform BROWSER, HYBRID, OR NATIVE

Choosing a Mobile Application Development Approach

Cross Platform Applications with IBM Worklight

Development of mobile applications for multiple platforms

Retool your HTML/JavaScript to go Mobile

Cross-Platform Development

Developing and deploying mobile apps

Multi-Platform Mobile Application Development Analysis. Lisandro Delía Nicolás Galdámez Pablo Thomas Leonardo Corbalán Patricia Pesado

Mobile Learning Application Based On Hybrid Mobile Application Technology Running On Android Smartphone and Blackberry

Considerations Regarding the Cross-Platform Mobile Application Development Process

Best practices building multi-platform apps. John Hasthorpe & Josh Venman

Smartphone Application Development using HTML5-based Cross- Platform Framework

The Suitability of Native Application for University E-Learning Compared to Web-Based Application

Take full advantage of IBM s IDEs for end- to- end mobile development

Building Mobile Applications Creating ios applications with jquery Mobile, PhoneGap, and Drupal 7

CROSS PLATFORM DEVELOPMENT The HTML5 Way

RapidValue Enabling Mobility. How to Choose the Right Architecture For Your Mobile Application

CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application

ios SDK possibilities & limitations

Lecture 3 Mobile App Development (Android, ios, BlackBerry, Windows Mobile) <lecturer, date>

Article. One for All Apps in HTML5

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013

Enterprise Mobile Application Development Strategies & Considerations for Building Mobile Apps

Dasharatham Bitla (Dash)

An Analysis of Mobile Application Development Approaches

Mobile Application Development. Adopt Based On Fit

HYBRID APPLICATION DEVELOPMENT IN PHONEGAP USING UI TOOLKITS

Navigating the Mobile App Development Landscape

How To Use Titanium Studio

Native, web or hybrid mobile-app development

Mobile Application Development

Survey, Comparison and Evaluation of Cross Platform Mobile Application Development Tools

Cross-Platform Mobile Apps Solution

Experimental Comparison of Hybrid and Native Applications for Mobile Systems

Deepak Patil (Technical Director) iasys Technologies Pvt. Ltd.

CROSS PLATFORM APP A COMPARATIVE STUDY

Cross Platform Applications with IBM Worklight

Cross-Platform Phone Apps & Sites with jquery Mobile

MENDIX FOR MOBILE APP DEVELOPMENT WHITE PAPER

Leveraging Partners and Open Source Technology in your Mobility Strategy. emids webinar Thursday, August 11, :00 pm 2:00 pm EDT

RhoMobile Suite. Develop applications for the next generation of business mobility

The open source cross-platform application development frameworks for smart phones

Enterprise Mobile Application Development: Native or Hybrid?

Module Title: Software Development A: Mobile Application Development

Native vs. HTML5 Mobile App Development

The Bootstrapper's Guide to the Mobile Web by Deltina Hay. Mobile App Strategy Worksheet. I. Target Market, App Category, Platforms

Enabling Cordova (aka PhoneGap) on Tizen. René Pourtier / Luc Yriarte

Whitepaper. Trans. for Mobile

UX & Cross-Platform Mobile Application Development Frameworks

To Study and Design a Cross-Platform Mobile Application for Student Information System using PhoneGap Framework

POINT-TO-POINT vs. MEAP THE RIGHT APPROACH FOR AN INTEGRATED MOBILITY SOLUTION

CiviMobile & CiviSync Mobile. Peter McAndrew Rohit Thakral

Building native mobile apps for Digital Factory

WHITE PAPER. Cross Platform Mobile Development

Developing mobile educational apps: development strategies, tools and business models

MOBILE APPLICATION - CROSS DOMAIN DEVELOPMENT AND STUDY OF PHONEGAP

WEB, HYBRID, NATIVE EXPLAINED CRAIG ISAKSON. June 2013 MOBILE ENGINEERING LEAD / SOFTWARE ENGINEER

max firt.mobi martes 26 de julio de 11

Cross-Platform Mobile Development: An Alternative to Native Mobile Development

RIA DEVELOPMENT OPTIONS - AIR VS. SILVERLIGHT

BELATRIX SOFTWARE. Why you should be moving to mobile Cross Platform Development? Introduction

Developing Cross-platform Mobile and Web Apps

ADF Mobile Overview and Frequently Asked Questions

ipad, a revolutionary device - Apple

HTML5 the new. standard for Interactive Web

the future of mobile web by startech.ro

How To Compare Cross Platform Development To Multi Platform Development

True Web Application Management: Fixing the Gaps in EMM Solutions

IADS (Intelligent Application Development Studio): Development of open source software based services

Cross-platform mobile development

White Paper INTRODUCTION. In mobile development, there are three different types of applications: PRE-SMARTPHONE MOBILITY NATIVE MOBILE APPLICATIONS

place/business fetch details, removefromfavorite () function, 189 search button handler bind, B BlackBerry build environment

Review of Cross-Platforms for Mobile Learning Application Development

Mobile Web Applications using HTML5. L. Cotfas 14 Dec. 2011

Mobile Learning Basics + (Free) Mobile Learning Guide. Jason Haag and Marcus Birtwhistle

Developing multidevice-apps using Apache Cordova and HTML5. Guadalajara Java User Group Guillermo Muñoz Java Developer

OS3036 Put Your ClearPath In Your Pocket

Smart Phones Application development using HTML5 and related technologies: A tradeoff between cost and quality

Transcription:

Analysis of Cross-Platform Development Frameworks for a Smartphone Pediatric Application Rui Oliveira 1, Gabriel Pontes 2, José Machado 1 and António Abelha 1 1 Department of Informatics, University of Minho, Braga, Portugal pg19804@alunos.uminho.pt, jmac@di,uminho.pt, abelha@di.uminho.pt 2 Association of Municipalities of Vale do Ave, Guimarães, Portugal gabrielpontes@amave.pt Abstract - The number of smartphone users is growing rapidly, including among healthcare professionals [1]. Together with a pediatrician, it was identified the necessity of a mobile tool to support clinical practice and decision. However, in order to reach the majority smartphone users it is necessary to develop applications for multiple platforms. In this article it is done an analysis of the smartphone market-share, a study of some of the most popular smartphone cross-platform development frameworks and finally selected the best framework to develop a pediatric application. such as: the evaluation of the best practice in neonatal jaundice, anemia; aid with the technical issues of venous catheter or arterial umbilical insertions, and converting the most commonly used units by pediatric caregivers. The application functionalities are being gathered based on the identified needs of CHP pediatricians. However, this application is also going to be useful for every pediatrician in general. III. SMARTPHONES MARKET SHARE Keywords - Smartphone, cross-platform, pediatric, market share I. INTRODUCTION Many medical applications for smartphones have been developed and widely used by healthcare professionals [1]. In the Centro Hospitalar of Oporto (CHP), in the city of Oporto, it was identified the need of an application capable of aiding pediatricians in several tasks they commonly perform. Yet, in order to develop mobile applications to the majority of the smartphones available on the market it is necessary to deploy them to several platforms. It is a consequence of the market share fragmentation. Over the last few years, several development frameworks became available with the purpose of deploying a single application to several platforms aiming to reduce the amount of time and expertise that would be necessary to its development. Each of these frameworks has its pros and cons, and the decision of which is the best is not straightforward. It depends on several aspects, such as: the features the application is intended to have, the allocated budget, the development team skills, among others. This article presents an analysis of some of the most well-known smartphone cross-platform development frameworks. Finally it is selected a framework to use during the development of the pediatric application. Looking into the smartphones market, it is not difficult to spot an operating system fragmentation issue. Nearly 20 years of mobile devices existence, there are too many different operating systems available with a considerable market share [2]. When an organization or a group of programmers decide to develop an application for a specific operating system (e.g. Android), their final product will inevitably reach a limited amount of the smartphone users. There are several smartphone operating systems available on the market, such as: Android, ios, Windows Phone, BlackBerry, Symbian OS, etc. Fig. 1 illustrates the smartphone operating system market shares from 2009 and 2012. There is also no sign of operating systems reduction over time. Recent news show that several worldwide recognized technology organizations have been working in releasing their own smartphone operating systems, willing to strive for their position in this market. Some examples are: Ubuntu for phones, Firefox OS and Tizen [3] [4] [5]. In Fig. 2 it is possible to see a forecast graphic for the II. PEDIATRIC SMARTPHONES APPLICATION Together with a pediatrician working in the CHP, it was identified the necessity of a mobile tool to support clinical practice and decision. This tool is going to aid pediatricians in several tasks they commonly perform, Fig. 1. Global smartphone operating systems market share from 2009 and 2012 [4]. 978-1-4799-0986-5/13/$31.00 2013 IEEE

Fig. 2. Yankee Group forecast for the smartphone operating system market share from 2013 to 2017 [6]. smartphones market share. This graphic is the result of a survey conducted by the Yankee Group company, which concludes that ios is going to be the operating system with the highest market share in the next few years [6]. In spite of not including the operating systems that are coming out, this projection clearly shows that it is not expected that the smartphone operating systems market fragmentation will suffer a radical change. In order to reach most of the users when developing a smartphone application, there are two possible approaches: the first is to develop a native application for each of the operating systems with the biggest market share; the second is to use a cross-platform development framework in order to develop the application only once, and deploy it to several operating systems. A cross-platform development framework is going to be used in order to shorten the development period of time and reach as many pediatricians as possible. IV. ANALYSIS OF CROSS-PLATFORM DEVELOPMENT FRAMEWORKS In the past few years, many cross-platform development frameworks have emerged. There has been an explosion of activity in this area as mobile devices become faster and more widely adopted, and particularly with a fast-growing market for applications [7]. Crossplatform development frameworks are intended to write an application once, and deploy it to several operating systems. This task may sound simple in theory, but it is in fact highly complex, due to a range of factors such as: the highly fragmented mobile market share, rapidly evolving standards, limitations imposed by the mobile devices themselves (screen size, input methods, display capabilities, etc.) and also constraints of the mobile network such as high latency and low bandwidth [8]. As each vendor implements its own application development stack, achieving cross-platform and crossdevice consistency is a non-trivial task. Fortunately as the web becomes ubiquitous and its technologies evolve, with more and more mobile browsers implementing new standards like HTML 5, CSS 3 and JavaScript, web applications are rapidly becoming an attractive and costefficient way of developing mobile applications. These can rival native apps in terms of rich user experience and access to advanced capabilities like storage and geolocation. The frameworks fall into two categories: those that let you create a native mobile application using crossplatform APIs, and HTML/CSS/Javascript frameworks that let you build cross-platform interfaces that run in a web browser. It is a common practice to combine these to create cross-platform native applications. Some examples of native cross-platform frameworks are Rhodes and Titanium; while some HTML/CSS/Javascript frameworks are PhoneGap and iwebkit [7]. Following, it is going to be presented a set of frameworks that facilitate the deployment of smartphone cross-platform applications. Due to the large amount of available options only the development community will discuss a few, which are believed to be part of the widely adopted frameworks. The discussed technologies are either open source or have a set of development tools free to use. A. Rhodes Rhodes is a cross-platform smartphone application framework that was developed by Rhomobile in 2008 and currently is maintained by Motorolla Solutions. This framework supports all major smartphones, such as: Windows Phone, Android, iphone, BlackBerry, among others. It achieves this by providing a runtime environment that executes on the device wrapped around a native app. This runtime Virtual Machine (VM), which is ported to the different platforms, abstracts the communication between the mobile app and the device [8]. Rhodes allows the development of an application using the Ruby programming language as well as several well-known web technologies: HTML, CSS and JavaScript. It reveals to be an advantage for programmers that already have a programming background with these technologies since it is possible to create native mobile applications without having to learn the specific SDKs of each platform. The framework can be used under Windows, Linux and Macintosh. It is necessary to have the specific SDKs installed of each of the devices it is pretended to deploy the application. Android and Symbian devices run on Java and are cross-platform, while BlackBerry and Windows Mobile devices require Windows and iphone devices require Macintosh [7]. Rhodes is an open source framework allowing developers to create consumer-type applications free of charge [9]. As any other open source project, it is possible to see the lines of code that compose Rhodes. It is also possible to extend it, fix bugs or to create a personalized version of the framework.

Ruby code helps to structure and control business logic using the built in Model-View-Controller. It has several similarities with the Ruby on Rails programming language like the MVC pattern and the possibility of embedding Ruby in the views (ERB). Rhodes also provides a local Object Relational Manager, called Rhom. It includes code to persist local data and sync remote data using RhoSync. Therefore, Rhodes developers do not have to worry about writing data storage and sync logic into their applications and can focus instead on presentation and business logic. At the end of the development, project files are compiled into a native executable that is installed on the device. Since Rhodes apps are native binary applications, they can be submitted and distributed through the Apple itunes App Store, BlackBerry World, Android Marketplace, and other distribution channels. It is usually necessary to sign up in the different developer programs and acquire the cryptographic keys as it also happens when developing applications using the native SDKs [7]. Rhodes may be installed on the computer as a gem of Ruby and used from the command line. It may also be installed throw the installation of RhoStudio, which is a component of a development suite called RhoMobile Suite. This Suit is a commercially-supported set of tools that contains RhoConnect (a tool to sync data with many different data sources), RhoStudio (an Eclipse plug-in to faster the application development) and RhoElements (based on the Rhodes framework with an extended set of APIs) [10]. B. PhoneGap Phonegap is an open source framework for building mobile applications using web technologies. It was created by a company named Nitoby in 2008 and is currently supported by Adobe Systems. With HTML, CSS and JavaScript, this framework allows the applications deployment to a wide variety of platforms: iphone, Android, Blackberry, WebOS, Windows Phone, Symbian and Bada [11]. Programmers with experience in those web technologies already have the needed knowledge to start developing, although it is necessary to use specific device SDKs and tools in order to build the mobile application [7]. PhoneGap applications are not purely HTML/JavaScript based, nor are they native. These are hybrid applications. Parts of the application, mainly the UI, the application logic, and communication with a server, is based on HTML/JavaScript. The other part of the application that communicates and controls the device (phone or tablet) is based on the native language for that platform. PhoneGap provides a bridge from the JavaScript world to the native world of the platform, which allows the JavaScript API to access and control the device. The JavaScript API has rich functionalities providing access to device capabilities, such as: accelerometer, camera, geolocation, network, storage, among others. Therefore, to take full advantage of this platform the programmer must be comfortable with the JavaScript programming language. PhoneGap does not come with an Integrated Development Environment (IDE) and as a consequence it is needed to use Eclipse with the Android SDKs to develop for Android, or Xcode if it is going to develop for iphone [12]. In spite of having a good set of capabilities, the PhoneGap API is not rich in features to work with the user interface. It is up to the developers to create their own styles in order to make the application have a good look. There are several user interface frameworks available to aid the interface development, such as: jquerymobile and Sencha Touch [8]. This framework imposes little structure and guidelines on how to best develop applications with it. The users are free to architect their solutions in a way that best suits their needs. This can be an advantage for experienced developers but it can also become challenging and promoting bad application design for the novice developers. Phonegap may be a good choice when there is a web application that is necessary to port to a mobile environment. Since most code is already in a web format, the task of converting it to mobile web in most cases should be an easy task to perform. C. Titanium Titanium is a cross-platform development framework that uses web technologies to deploy mobile applications. It was created in 2008, by the Appcelerator company and is a commercially supported product with its source code released under the Apache 2 license [7]. Titanium is a Software Development Kit (SDK) with over 5,000 device and mobile operating system APIs, Studio, a powerful Eclipse-based IDE, Alloy, an MVC framework and Cloud Services for a ready-to-use mobile backend [13]. It may be installed under Windows, Macintosh and Linux. There is a free community edition to develop and deploy the applications as well as the Professional and Enterprise editions that offer additional support and services. It has a good documentation and other online resources, like training videos. It is also possible to purchase training courses and certifies in the Appcelerator website. All these resources allow new developers to quickly start developing their applications. This framework is mainly focused on the Android and iphone/ipad devices. It has a few but limited functionalities for BlackBerry devices, however there is no support for this platform and the APIs are not as mature as the other ones. In spite of being possible to use HTML, CSS and JavaScript to develop applications, it isn t mandatory. Just modifying its parameters may customize the look and feel of the different objects of the application. Therefore, JavaScript is the only language that is necessary to use in the Titanium framework. When using JavaScript in Titanium the developer may take advantage of its object-oriented model, with its methods and properties that Titanium provides via its API [14].

When a Titanium app is compiled, its engine processes the JavaScript and then builds an appropriate native project for the specified platform. With an ios application it is created an Xcode project and then compiled using Apple s compiler, while with Android it is created a native java application and compiled using the Android compiler. This means that the final project is compiled with the native APIs, in spite of the application being developed with the Titanium APIs. The end application is 100% native, using 100% native controls. One of the big advantages of this framework is that due to its ability to compile the applications with the native APIs, it provides a wider set of native device functionalities that a web application can t provide. D. Adobe Flash, Flex and Air Adobe Flash platform contains several Flash-based runtime clients: Flash Player, Flash Lite and Adobe Integrated Runtime (AIR). Each of these clients has its own specific APIs. This platform also comes along with a component-based framework, named Flex. These technologies work with the SWF format [15]. When it comes to mobile devices, both Flash Lite and Flash Player support Flash content in such devices. Flash Lite is intended to run on performance-limited mobile devices. In the other hand, Flash Player is intended to support the deployment of SWF content for web browsers and mobile devices. The Flash technology is fully supported on Android and BlackBerry Tablet OS mobile platforms, while it is not on the Apple ios platform. However, using Action Script 3 (AS3) and AIR, it is possible to target the applications to run on the platform via standalone applications. AS3 is an object-oriented language for creating media content for playback in the Flash runtime clients Flash Player, Flash Lite, and Adobe AIR. Developers that are familiar with the Java and/or JavaScript languages should find AS3 familiar [15]. The Flex framework uses a set of AS3 classes to provide user interface (UI) components allowing the development of rich media applications. Adobe Flex is supported by the runtime APIs of Flash Player and Adobe AIR. It is available in the Adobe Flash Builder IDE, as well as through a SDK that allows the use of command line tools to create the application. Adobe Flash Builder is a commercial product, however it is possible to develop the application using the Flex SDK with a free IDE, such as: FlashDevelop [16]. The Flex framework also uses the MXML language. MXML is an XML tag-based markup language, used in the layout and design of components and data assets for Flex-based user interfaces. In order to preserve the integrity of the MXML documents, it is a structured language with a set of rules that must be followed, just as it is seen in the XML language [15]. AIR is a cross-platform run-time that allows developers to create and deploy applications for a variety of operating systems outside of Internet browsers. AIR has the ability to install the applications in the same way as the native applications. With the AIR run time, developers may use the Flex framework to create mobile applications that are installed as standalone applications in the mobile devices. Adobe AIR SDK is also free and comes along with the tools necessary to build and deploy Adobe AIR applications [16]. V. SELECTION OF THE TECHNOLOGY The technologies presented in this document, are just a subset of the total amount of available technologies capable of producing such an application. It is believed that the chosen technologies are representative of the wide variety of available choices. In order to choose the technology for this project, there were considered the following criterions: The technology used in this project should allow the freely development and distribution of the application; It should be possible to compile the application for the smartphone operating systems with the biggest market share; The technology involved should have the necessary capabilities to implement the desired functionalities; The technology should not be difficult to master. A limitation of the multi-platform frameworks is the operating systems that it is possible to deploy the applications. The frameworks that deploy to the larger amount of operating systems are Rhodes and PhoneGap, while those that deploy to a smaller amount are Flex and Titanium. Another limitation found in the studied frameworks, is the ability they have to take advantage of device capabilities. It s generally accepted that frameworks with the capability of deploying native applications, are able to provide device capabilities related APIs that frameworks deploying web-based/hybrid applications cannot provide. For example, it is known there are functionalities that are going to involve calculations with dates. Some frameworks have limitations when it is necessary to work with calendars, such as: PhoneGap and Titanium. PhoneGap core APIs don t incorporate calendar functionalities in spite of already being available third party plugins for Android and ios, while the Titanium framework only provides calendar capabilities for iphone and ipad devices [17] [18]. The Adobe Flash, Flex and Air technologies provide a powerful set of tools to develop mobile applications. In spite of only deploying to ios, Android and Blackberry, these three operating systems have the biggest smartphone

market share percentage, according to Fig. 1. However these tools are normally used with the Adobe Flash Builder IDE that is commercially supported. The wide documentation and video training provided by Adobe presupposes the utilization of Flash Builder IDE. The use of the Flex SDK with an open source IDE, like FlashDevelop, has very poor documentation and was also not found any active community debating/supporting the combination of such technologies. On the other hand, Rhodes is a technology that was not found any kind of limitations. Nowadays it is part of a commercially supported development suite; however it is possible to use it separately for free. As a consequence, its utilization is not as user-friendly as the suite, as well as it has fewer capabilities. Although, it has a good documentation online and a forum with an active community hosted in the Motorola Solutions website. As a result, Rhodes is the technology that is going to be used to develop the pediatric smartphone application. VI. CONCLUSION Smartphones are becoming widely used by healthcare professionals. The smartphone market share has an operating system fragmentation problem that is not predicted to change in the next few years. The crossplatform smartphone development frameworks are an alternative to the native application development allowing developing an application once and deploying it to several platforms. This paper presents data about the smartphone market share in 2012 and a couple of predictions of the market share for the next few years. It also provides an overview of some of the most used frameworks to develop smartphone multi-platform applications as well as some of its limitations. The smartphone cross-platform development frameworks should also be considered when planning to develop a smartphone application. After the study of the several smartphone cross-platform development frameworks available and analyzing the needs the application was going to meet, it was concluded that Rhodes was the best development choice for the project. The Rhodes platform has the capabilities to develop the required functionalities, providing the possibility to deploy the final application to the platforms with the biggest market share. It also requires less time and expertise to develop than developing with the native SDKs. ACKNOWLEGMENT This work is financed with the support of the Portuguese Foundation for Science and Technology (FCT), with the grant SFRH/BD/70549/2010 and within project PEst- OE/EEI/UI0752/2011. REFERENCES [1] A. S. M. Mosa, I. Yoo, and L. Sheets, A systematic review of healthcare applications for smartphones., BMC medical informatics and decision making, vol. 12, no. 1, p. 67, Jan. 2012. [2] E. Freedman, UGH! 3 MILLION PLATFORMS WITH 100 USERS EACH, 2007. [Online]. http://eliainsider.com/2007/10/21/ugh-3-million-platformswith-100-users-each/. [Accessed: 18-Apr-2013]. [3] R. Trenholm, Ubuntu for phones delayed until 2014, but on Nexus 4 now, 2013. [Online]. http://crave.cnet.co.uk/mobiles/ubuntu-for-phones-delayeduntil-2014-but-on-nexus-4-now-50010475/. [Accessed: 18- Apr-2013]. [4] J. Garside, Firefox maker Mozilla to launch smartphone operating system, 2013. [Online]. http://www.guardian.co.uk/technology/2013/feb/22/firefoxmozilla-smartphone-operating-system. [Accessed: 18-Apr- 2013]. [5] J. Lee, Samsung Will Release Tizen-Based Smartphone This Year, 2013. [Online]. http://www.bloomberg.com/news/2013-03-14/samsungwill-release-tizen-based-smartphone-this-year.html. [Accessed: 18-Apr-2013]. [6] J. Paczkowski, Android s Leaky Bucket: Loyalty Gives Apple the Edge Over Time, 2013. [Online]. http://allthingsd.com/20130426/androids-leaky-bucketloyalty-gives-apple-the-edge-over-time/. [Accessed: 29- Apr-2013]. [7] S. Allen, V. Graupera, and L. Lundrigan, Pro Smartphone Cross-Platform Development. Berkeley, CA: Apress, 2010. [8] G. Hartmann, Cross-platform mobile development, no. March, pp. 1 18, 2011. [9] P. Arcuri, Rhomobile vs. rhodes, 2013. [Online]. https://developer.motorolasolutions.com/message/7880#788 0. [Accessed: 17-May-2013]. [10] M. Solutions, RhoMobile Suite documentation center, 2013. [Online]. http://docs.rhomobile.com/. [11] A. Systems, PhoneGap Website, 2013. [Online]. http://phonegap.com/. [Accessed: 04-May- 2013]. [12] Y. P. Rohit Ghatol, Beginning PhoneGap: Mobile Web Framework for JavaScript and HTML5. Apress, 2012. [13] Appcelerator, Appcelerator Titanium, 2013. [Online]. http://www.appcelerator.com/. [Accessed: 06- May-2013]. [14] J. Anderson, Appcelerator Titanium: Up and Running. O Reilly Media, 2013. [15] J. G. Anderson, Beginning Flash, Flex, and AIR Development for Mobile Devices. Wrox, 2011. [16] T. Paananen, SMARTPHONE CROSS-PLATFORM FRAMEWORKS, JAMK University of Applied Sciences, 2011. [17] Appcelerator, Titanium.Calendar, 2013. [Online]. http://docs.appcelerator.com/titanium/latest/#!/api/titanium.calendar. [Accessed: 21-Apr-2013]. [18] P. Community, Phonegap calendar, 2012. [Online]. http://community.phonegap.com/nitobi/topics/phonegap_ca lendar. [Accessed: 21-Apr-2013].