Cross-Platform Mobile Applications with Web Technologies

Total Page:16

File Type:pdf, Size:1020Kb

Cross-Platform Mobile Applications with Web Technologies International Journal of Computing and Digital Systems ISSN (2210-142X) Int. J. Com. Dig. Sys. 4, No.3 (July-2015) http://dx.doi.org/10.12785/ijcds/040302 Cross-platform Mobile Applications with Web Technologies Christos Bouras1,2, Andreas Papazois2, and Nikolaos Stasinos2 1 Research Unit 6, Computer Technology Institute & Press “Diophantus”, Patras 26504 , Greece 2 Computer Engineering & Informatics Department, University of Patras, Patras 26504, Greece Received 21 Nov. 2014, Revised 19 Jan. 2015, Accepted 7 Mar. 2015, Published 1 July 2015 Abstract: The extended use of smart mobile devices has become an integral part of daily life leading to the expansion of mobile application development. Currently, the majority of mobile applications are native applications that need an initial installation prior to being utilized. In addition, for a given application, a separate software development process could be required for each mobile platform, which subsequently increases dramatically the corresponding effort and cost. With the emergence of HTML5 these issues can be addressed efficiently, since web technologies allow the application development in a cross-platform manner. An important benefit is that users can have easy and immediate access the application without any need for downloading and installation. In this manuscript, we investigate the potentials of mobile application development with web technologies and we present a development framework that we have designed and implemented. This framework utilizes the most important state-of-art web technologies for the support of mobile devices. It can be used for the implementation of mobile web applications and also for the investigation and experimentation on the main features that HTML5 offers for this specific type of devices. Keywords: mobile web application, HTML5, framework, cross-platform, social networks Longer quality control process, given the need for 1. INTRODUCTION testing the application’s behavior in different The use of smart mobile devices, such as smartphones contexts, i.e., platforms, devices, etc.. and tablets, has become an integral part of daily life From a user's point of view, each native mobile leading the development of innovative mobile application requires downloading and installation prior to applications to a great expansion. Currently, there are its usage, which adds an overhead of time and memory several different platforms for mobile application resources even for applications that are rarely used ‎[2]. development with the iOS and Android being the Application’s upgrade becomes also an issue for similar dominant among them. Each of these platforms requires reasons since it should also be performed onto the end- separate software development process, based on different device in a non-transparent way after end-user’s consent tools, SDK and programming languages to implement the to download and install new version. same functionality, which is an activity that subsequently increases dramatically the corresponding effort ‎[1]. This The emergence of HTML5 introduced a new paradigm fact has a negative effect on the lifecycle of the mobile for the mobile application development and there are application development since several issues usually arise, several reasons why the popularity of HTML5 for mobile including: application development is increasing steadily ‎[3]. HTML5 supports interfaces to the various mobile device Multiple software implementations, since sensors and operations and thus it can provide nearly the different production lines should be maintained same functionality as the native applications. for the various mobile platforms supported. Additionally, through new features such as application Inconsistencies between versions for different cache and file system, selected data can be stored so that devices and platforms, due to differences in the the application can be executed even when the mobile implementation process and other device or device is not connected to a data network. Given that the platform limitations. mobile application runs on a web browser, application portability is assured in a cross-platform manner saving a large amount of costs for the software development E-mail address: [email protected], [email protected], [email protected] http://journals.uob.edu.bh 154 Christos Bouras, et. al: Cross-platform Mobile Applications with Web Technologies process ‎[4]. Last but not least, with mobile web current work in the field of cross-platform web applications users are not obliged to install any software application development. In Section ‎3 we present the to access the application features ‎[5]. The significance of architectural design of the framework for mobile web HTML5 as a technology for mobile application application development as well as selected important development has increased in light of Adobe's cease of implementation issues. Section ‎4 provides details on the developments on Flash Player for mobile browsers and its most important features offered by the framework. In turn to invest on HTML5 instead ‎[6]. Section ‎5 we present the conclusions of our study and, In this manuscript, we present the design and finally, in Section ‎6 we close by summarizing some implementation of a framework built for experimentation possible future steps that can follow this work. on mobile web application development. This framework is a set of tools that make use of the most important 2. RELATED WORK features and provides indicative methodologies of their Web technologies are becoming popular in the frame use. We use it to investigate the potentials of the HTML5 of mobile application development. In fact, the technology for mobile application development and to capabilities and the development process with HTML5 explore new fields of services and functionalities that can are so significant that platforms for building native be engineered. Part of this study is also the investigation applications using web technologies are also becoming and proposal of best practices as well as ideas for future dominant. Some related interesting examples are work on mobile applications based on HTML5. The main PhoneGap, whose corporate website is at: purpose of this framework is to provide the developer http://phonegap.com/, and Apache Cordova, whose with simple and easy to implement features of HTML5 in website is at: http://cordova.apache.org/, that have been a cross-platform aspect. Most of the features of the both extensively documented by relevant technical framework are essential for a modern mobile application. literature ‎[7], ‎[8], and ‎[9]. They make use of the information a device can provide and also features such as social network interaction and A. PhoneGap data on the cloud are presented. It should be noted that the Adobe PhoneGap is a tool that provides the capability application that demonstrates the features of the of building a web application into a native one. It is based framework is publicly available online at “RU6 Mobile on Apache Cordova, which firstly developed by Adobe Group: Mobile Apps”, at the following URL: and it is an open source project. Apart from the packaging http://ru6.cti.gr/mobile/apps.php to be used by interested of the web application into a native one, something that researchers or web engineers. Additionally, the gives access to developers to each platform’s applications applications features are briefly demonstrated in the stores, PhoneGap provides interfaces to many native demo-video created for this purpose and being available features and services that may not be supported by in website “RU6 Mobile Group: Mobile apps demo HTML5 and all these in JavaScript language. For example video”, and more specifically at the following URL: with can have access to device’s SD card, to the native http://ru6.cti.gr/mobile/uploads/demo_html5app.mp4. notification system and many more. The platforms that This manuscript is structured as follows: In Section ‎2 we presented a scientific and technical review of the Figure 1. PhoneGap Application Development Process (http://phonegap.com/) http://journals.uob.edu.bh Int. J. Com. Dig. Sys. 4, No.3, 153-163 (July-2015) 155 are supported until now are Android, BlackBerry, iOS, D. Sencha Touch Windows Phone, Windows 8 and Tizen. Furthermore It is another mobile application framework, which is there are many plugins that offer additional features while open source and is based on HTML5. It supports the Adobe has developed a Cloud service that converts and following platforms: Android, iOS, Blackberry, Windows packages any web application into a native application Phone and others. It provides a theming engine and tools without being necessary for the developers to get into the for user interface development and it also supports the building process by their self and learning additional creation of hybrid applications with Apache Cordova. tools. Below there are pictures of the building tool and the development process in PhoneGap. E. Titanium Appcelerator B. Parse It is a mobile application development framework. The main difference here is that it produces native code It is a cloud framework that offers backend services and so a real native application. The programming API is for web application and more specifically focus on mobile based on JavaScript and HTML5 and provides specific devices. It has APIs for many different platforms such as SDK for every supported platform. The supported iOS, OSX, Android, Windows Phone, Windows 8, platforms are: iOS, Android,
Recommended publications
  • Building Android Apps with HTML, CSS, and Javascript
    SECOND EDITION Building Android Apps with HTML, CSS, and JavaScript wnload from Wow! eBook <www.wowebook.com> o D Jonathan Stark with Brian Jepson Beijing • Cambridge • Farnham • Köln • Sebastopol • Tokyo Building Android Apps with HTML, CSS, and JavaScript, Second Edition by Jonathan Stark with Brian Jepson Copyright © 2012 Jonathan Stark. All rights reserved. Printed in the United States of America. Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472. O’Reilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (http://my.safaribooksonline.com). For more information, contact our corporate/institutional sales department: (800) 998-9938 or [email protected]. Editor: Brian Jepson Cover Designer: Karen Montgomery Production Editor: Kristen Borg Interior Designer: David Futato Proofreader: O’Reilly Production Services Illustrator: Robert Romano September 2010: First Edition. January 2012: Second Edition. Revision History for the Second Edition: 2012-01-10 First release See http://oreilly.com/catalog/errata.csp?isbn=9781449316419 for release details. Nutshell Handbook, the Nutshell Handbook logo, and the O’Reilly logo are registered trademarks of O’Reilly Media, Inc. Building Android Apps with HTML, CSS, and JavaScript, the image of a maleo, and related trade dress are trademarks of O’Reilly Media, Inc. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and O’Reilly Media, Inc., was aware of a trademark claim, the designations have been printed in caps or initial caps. While every precaution has been taken in the preparation of this book, the publisher and authors assume no responsibility for errors or omissions, or for damages resulting from the use of the information con- tained herein.
    [Show full text]
  • Multi-Platform Mobile Apps
    Multi-platform Mobile Apps Greg Jennings IT Manager - Hertford College Please Don’t tell my mother , she saw me with two phones and now thinks I’m a drug dealer and I wouldn’t want to break her heart saying that I work in IT Why we did it ? • Hertford College in 2004 opted for a digital prospectus (CD then a DVD) saving ~ £15,000 per year • Filming did take a bit of time, so did post processing • At the time it was well worth doing for a number of reasons How we used to do it • We recorded current SCR, MCR and JCR members • Did the art work , video rendering and duplication in house • Used the Orchestra for sound track • In total we created over 20,000 DVDs over the years What Changed ? • We realised we needed to get information to admission students before they arrived • We wanted to reduce costs (filming time, postage, man hours, duplication costs etc ...) • We wanted it to be up date • We wanted mobile access What we thought ! • Let’s do an App ... • Let’s try and make it multi-platform • +1 platform a year • Let’s try and reuse media • Let’s use in built maps • Let’s give it away Our expectations • Let’s see how much someone would charge • HOW MUCH !!!! (£3K - 30K) • Let’s see how we can do it in house • Hmmm.. seems like 150 hrs of relearning objective C programming alone ! • LET’S CHEAT ! Phonegap • Phonegap is a framework for making apps • You don’t need to relearn Objective C • You can design for many platforms • Symbian, iOS, Blackberry, Android, WebOS, Palm, (soon Windows mobile 7) What phonegaps gives you • Accelerometer, camera,
    [Show full text]
  • 17 Mobile.Pdf
    Google programmers are doing work on mobile applications first because they are better apps and that what top programmers want to develop. Eric Schmidt Growth = Opportunity Constraints = Focus Capabilities = Innovation Multiple screen sizes and densities Performance optimization Touch targets, gestures and actions Location systems Device capabilities In next years up to 90% of the mobile market will be smartphones Mobile web growth has outpaced desktop web growth 8x People come online on mobile first on new markets. Screen size ◦ Focus on core actions ◦ Know your users ◦ Use scalable design Create a product! Don’t just reimagine one for small screens. Great products are created from scratch never ported! Brian Fling My goal was initially just to make a mobile companion, but I became convinced that it was possible to create a version of FB that was actually better than the website. Joe Hewitt The main function should be immediately apparent !! 60 menu items on the actual website 9 items on the mobile version Users are expecting a well designed mobile experience Iphone 3G ◦ 320x480 3,5in 164ppi Motorolla Droid, Nexus One ◦ 480x854 3.7in 264ppi Iphone 4 ◦ 960x640 3,5in 326ppi Define device groups Create a default reference design Define rules for content and design adaptation Opt for web standards and flexible layout Keep performance on top of mind ◦ Reduce requests and file size ◦ Eliminate redirects ◦ Use css sprites to serve multiple images ◦ Consolidate css and js into a single file ◦ Minify your code Take advantage of HTML5 ◦ Load content lazily ◦ Use application cache for local content storage ◦ Use css 3 and canvas tag instead of images where possible.
    [Show full text]
  • The Importance of Object-Oriented Programming in This Era of Mobile Application Development
    IOSR Journal of Computer Engineering (IOSR-JCE) e-ISSN: 2278-0661,p-ISSN: 2278-8727, Volume 17, Issue 6, Ver. I (Nov – Dec. 2015), PP 30-40 www.iosrjournals.org The Importance of Object-Oriented Programming in This Era of Mobile Application Development Onu, F.U*, Ikedilo, O.E*, Nwoke, B.O* and Okafor, P* *Department of Computer Science, Ebonyi State University, Abakaliki Abstract: In the past two decades object oriented programming has become the dominant programming OOP paradigm used by application developers. Object oriented programming scales very well, from the most trivial of problems to the most complex tasks. It provides a form of abstraction that resonates with techniques people use to solve problems in their everyday life. Although the fundamental features of what we now call object- oriented programming were invented in the 1960's, object oriented languages really came to the attention of the computing public in the 1980's. Software producers rush to release object oriented versions of their products. Countless books and special issues of academic and trade journals have appeared on the subject. Object- oriented programming is being greeted with even more enthusiasm than we saw heralding earlier revolutionary ideas, such as structured programming". The intent in this publication is to emphasize and explain the importance of object-oriented programming in this era of mobile development, and in doing so to illustrate the following two propositions: OOP is a revolutionary idea, totally unlike anything that has come before in programming, OOP is an evolutionary step, following naturally on the heels of earlier programming techniques.
    [Show full text]
  • HTML5, CSS3, Javascript for Mobile Web Aryo Pinandito Well, You Could Build Native, But
    HTML5, CSS3, Javascript for Mobile Web Aryo Pinandito Well, you could build native, but... ! Which platforms do you choose? ! How many codebases do you want to (or even can you) support? ! How long will it take to build native on N number of platforms? ! How much effort will be duplicated? ! What if you bet on the wrong platform? ! Who writes the code? Hire out? Retrain/retool yourself or your devs? 2 The Web Is An Option... ! ...and should be preferred when feasible ! Mobile browsers are progressing fast and converging around WebKit ! But there are limitations ! Native apps are inherently more capable than web apps ! Native apps run faster and smoother on resource constrained devices 3 Common Components ! Web documents ! Server-side programming ! Client-side programming ! Web services ! JQuery HyperText Markup Language ! Disagreement about HTMLs role ! Only give the content and structure of the document, leave visualization to the browser ! Browsers vary (graphical, text based, mobile devices) ! User preferences vary (some people like larger fonts) ! Environment varies (screen sizes, fonts available, etc.) ! But authors want to control what the document looks like ! Trend towards separating content from presentation ! Cascading Style Sheets – presentation information only ! HTML documents contain little formatting Many Choices… ! Build a Native app (for specific platform) that runs like a website (WebView). ! Build a Native bare bone app that connects to a website. The app is actually located on the website (Sencha, jQTouch, jQuery Mobile, etc.) ! Build your app in the Cloud and dont mess with Xcode or Eclipse (PhoneGap). ! Build your app using a third party dev tool.
    [Show full text]
  • Using Jquery Tools in Wordpress
    Using jQuery Tools in WordPress Throughout this book, we've looked at various examples of what is possible to achieve using jQuery Tools. However this has been within the confines of a standalone environment, It's time to have a look at how these tools could be used within a CMS such as WordPress. Over the next few pages, we are going to take a look at how jQuery Tools can be implemented in a CMS, by means of examples based around WordPress. We will focus on the following: • Incorporating jQuery Tools into your plugin or theme • Incorporating a number of tools into WordPress by using plugins, themes or shortcodes, with examples of Overlays, Tabs, and Slideshow • Using one of the original examples from the book, and adapting it for use in WordPress So, in that time honored tradition: "What are we waiting for? Let's get on with it…" The examples that feature in this chapter assume a degree of prior knowledge of using Wordpress and jQuery together. If you would like further information on using both, then it is worth reading Wordpress 3.0 jQuery by Tessa Blakeley Silver, which is available from Packt Publishing. Using jQuery Tools in WordPress Tools you'll need To get started with the demos and examples that feature in this chapter, there are a number of tools you will need. It is assumed that you will have some knowledge of them, or at least a favorite, so we won't go into too much detail. The critical ones you need are the following: • A text editor: There are hundreds available, all with differing capabilities or features.
    [Show full text]
  • Pro Android Web Apps Group and Ask Questions There (
    CYAN YELLOW SPOT MATTE MAGENTA BLACK PANTONE 123 C ® Companion BOOKS FOR PROFESSIONALS BY PROFESSIONALS eBook Available eveloping applications for Android and other mobile devices using web The “Build Once” Approach Pro Dtechnologies is now well within reach. When the capabilities of HTML5 are combined with CSS3 and JavaScript, web application developers have an for Mobile App Development opportunity to develop compelling mobile applications using familiar tools. Not only is it possible to build mobile web apps that feel as good as native Apps Web Android apps, but also to write an application once and have it run a variety of differ- ent devices. Pro Android Web Apps teaches developers already familiar with web appli- cation development how to code and structure a web app for use on the Android mobile platform. • Learn how to structure mobile web apps through real-world application examples. • Discover what cloud platforms such as Google App Engine have to offer Android web apps. • Get a real picture of the status of HTML5 on Android and other mobile devices. • Understand how to use native bridging frameworks such as PhoneGap to device-level features. • Explore the different UI frameworks that are available for building mobile web apps. • Learn how to include mapping and leverage Location-Based Services in mobile web apps. • Enable social integration with your Android web. After reading Pro Android Web Apps, you will have a greater understanding of not only the world of web apps on Android, but also how to leverage additional tools. Through the practical samples in the book, you will gain solid exposure of where the opportunities and challenges lie when building mobile apps the web way.
    [Show full text]
  • The Ios Interface and User Experience 48 What Is the Status Bar?
    The Web Designer’s Guide to iOS Apps: Create iPhone, iPod touch, and iPad apps with Web Standards (HTML5, CSS3, and JavaScript) Kristofer Layon New Riders 1249 Eighth Street Berkeley, CA 94710 510/524-2178 510/524-2221 (fax) Find us on the Web at: www.newriders.com To report errors, please send a note to [email protected] New Riders is an imprint of Peachpit, a division of Pearson Education. Copyright © 2011 by Kristofer Layon Project Editor: Michael J. Nolan Development Editor: Jeff Riley/Box Twelve Communications Technical editors: Zachary Johnson (www.zachstronaut.com), Alexander Voloshyn (www.nimblekit.com) Production Editor: Myrna Vladic Copyeditor: Gretchen Dykstra Proofreader: Doug Adrianson Indexer: Joy Dean Lee Cover Designer: Aren Howell Straiger Interior Designer: Danielle Foster Compositor: David Van Ness Notice of Rights All rights reserved. No part of this book may be reproduced or transmitted in any form by any means, elec- tronic, mechanical, photocopying, recording, or otherwise, without the prior written permission of the pub- lisher. For information on getting permission for reprints and excerpts, contact [email protected]. Notice of Liability The information in this book is distributed on an “As Is” basis without warranty. While every precaution has been taken in the preparation of the book, neither the author nor Peachpit shall have any liability to any per- son or entity with respect to any loss or damage caused or alleged to be caused directly or indirectly by the instructions contained in this book or by the computer software and hardware products described in it. Trademarks Apple, iPod, iTunes, iPhone, iPad, and Mac are trademarks of Apple, Inc., registered in the United States and other countries.
    [Show full text]
  • Native Applications on Modern Devices Master's Thesis
    Native applications on modern devices Master's thesis Simen Hasselknippe 4/22/2014 This page is intentionally left blank DEVELOPING NATIVE APPLICATIONS ON MODERN DEVICES: A CROSS-PLATFORM APPROACH A Xamarin product research Keywords Xamarin, MvvmCross, MonoGame, Mono, Native, App, App-development, C#, devices, cross- platform, iOS, Android, Windows Phone, Windows 8 Simen Hasselknippe [email protected] This page is intentionally left blank Abstract This paper is a part of my master thesis at the University of Oslo. It introduces concepts, theories, and patterns related to cross-platform development on mobile devices. It discusses what applications programmers can develop, what devices are important to target, and how to develop mobile applications with a cross-platform approach. During this thesis, I have used various tools and products, including Xamarin.iOS, Xamarin.Android Xamarin Studio, Visual Studio, MvvmCross, MonoGame, iOS, Android and Windows Phone. This page is intentionally left blank Table of Contents Preface............................................................................................................................................. 7 List of figures .................................................................................................................................. 9 List of tables .................................................................................................................................. 11 Introduction ..................................................................................................................................
    [Show full text]
  • Cross-Platform Mobile Development: an Alternative to Native Mobile Development
    Degree project Cross-Platform Mobile Development: An Alternative to Native Mobile Development Author: Suyesh Amatya Supervisor: Dr. Arianit Kurti Date: 2013-10-29 Course Code: 5DV00E, 30 credits Level: Masters Department of Computer Science Abstract Mobile devices and mobile computing have made tremendous advances and become ubiquitous in the last few years. As a result, the landscape has become seriously fragmented which brings lots of challenges for the mobile development process. Whilst native approach of mobile development still is the predominant way to develop for a particular mobile platform, recently there is shifting towards cross-platform mobile development as well. In this thesis, a survey of the literature has been performed to see the trends in cross- platform mobile development over the last few years. With the result of the survey, it is argued that the w eb-based approach and in particular, hybrid approach , of mobile development serves the best for cross-platform development. Using the hybrid approach, a prototype application has also been developed and built into native application for different platforms. This has helped to get a better insight about the domain of cross-platform mobile development and its main advantage of the unification of the development and testing process. The results of this work indicate that even though cross platform tools are not fully matured they show great potential and reduce the cost associated in developing native mobile applications. Cross-platform mobile development is equally suitable for rapid development of high-fidelity prototypes of the mobile application as well as fairly complex, resource intensive mobile applications on its own right.
    [Show full text]
  • Oracle Webcenter Sites
    Oracle® Fusion Middleware WebCenter Sites: Mobility Server Template API Guide 11g Release 1 (11.1.1.8.0) E42080-01 July 2013 Oracle Fusion Middleware WebCenter Sites: Mobility Server Template API Guide, 11g Release 1 (11.1.1.8.0) Copyright © 2011, 2012, 2013 Oracle and/or its affiliates. All rights reserved. This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited. The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing. If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable: U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007).
    [Show full text]
  • Cross-Platform Mobile Development Using Web Technologies
    FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO Cross-platform mobile development using Web Technologies Diogo Costa Mestrado Integrado em Engenharia Informática e Computação Supervisor: Rui Maranhão (PhD) July 10, 2013 Cross-platform mobile development using Web Technologies Diogo Costa Mestrado Integrado em Engenharia Informática e Computação Approved in oral examination by the committee: Chair: António Miguel Pontes Pimenta Monteiro (PhD) External Examiner: José Maria Amaral Fernandes (PhD) Supervisor: Rui Filipe Lima Maranhão de Abreu (PhD) July 10, 2013 Abstract There are many different mobile platforms nowadays that share the same applications, at least their name and brand. The differences between each of these mobile platforms make it very hard to build a single code base that runs in all platforms. However, efforts are being made to turn this into a possible scenario. Since almost all major platforms provide a web engine that supports HTML5, CSS3 and Javascript, these technologies have become the base for most cross-platform development frame- work efforts. Using HTML5, Javascript and an application wrapper, such as PhoneGap, it is possible to make a web application that runs just like a native one. One of the major drawbacks of this approach is developing the user interface. Each platform has its user interface guidelines and designing an interface for each platform can be time consuming. This dissertation addresses the implementation of framework that aims to simplify the devel- opment of cross-platform applications using HTML5, CSS3 and Javascript, including a library that auto-adjusts to the look and feel of the platform the application is running on. A demo application will also be described, showcasing the developed framework.
    [Show full text]