Application Development for Mobile and Ubiquitous Computing. 10. Cross-Platform Development

Size: px
Start display at page:

Download "Application Development for Mobile and Ubiquitous Computing. 10. Cross-Platform Development"

Transcription

1 Department of Computer Science Institute for System Architecture, Chair for Computer Networks lication Development for Mobile and Ubiquitous Computing 10. Cross-Platform Development Dr. Ing. Thomas Springer Technische Universität Dresden Chair of Computer Networks

2 Lecture Structure lication Development Cross-Platform Development Adaptation and Contextawareness Java ME Android ios.net Compact Framework/ Windows Phone 7 OSGi Mobile Middleware Disconnected Operations Mobile Databases Locationbased Services Communication Mechanisms Mobile Internet Enabling Technologies and Challenges Slide 2

3 Why Cross-Platform Development? Strong fragmentation of market for mobile device platforms Market changes quickly High update rate Device features Platform APIs 3

4 Why Cross-Platform Development? Java ME Project Android Project ios Project Windows Phone Project Mobile Device Mobile Device Mobile Device Mobile Device Midlet Suite Midlet Suite....apk.apk....ipa.ipa....xap.xap... Optional Packets MIDP Profile CLDC Configuration, KVM Operating System lication Framework Libraries Linux Kernel Dalvik VM + Core libraries Custom Frameworks Cocoa Touch UIKit Media Core Services Foundation Mach/BSD Kernel Silverlight Model Frameworks XNA UI Model Kernel Hardware Foundation HTML/JavaScript Common Language Runtime Cloud Integration Hardware Hardware Hardware Hardware 4

5 Problem description High development effort Know-how for multiple platforms High update rates of technology Customers don t pay per platform but for project Short time to market Fast support of platform changes/new platforms High maintenance effort Manage multiple code bases Avoid inconsistencies Mobility Support 5

6 Write once, run everywhere? Cross-Platform Project Mobile Device Mobile Device Mobile Device Mobile Device Midlet Suite Midlet Suite....apk.apk....ipa.ipa....xap.xap... Optional Packets MIDP Profile CLDC Configuration, KVM Operating System lication Framework Libraries Linux Kernel Dalvik VM + Core libraries Custom Frameworks Cocoa Touch UIKit Media Core Services Foundation Mach/BSD Kernel Silverlight Model Frameworks XNA UI Model Kernel Hardware Foundation HTML/JavaScript Common Language Runtime Cloud Integration Hardware Hardware Hardware Hardware 6

7 How can we achieve it? Cross-Platform Project Mobile Device Mobile Device Mobile Device Mobile Device Midlet Suite Midlet Suite....apk.apk....ipa.ipa....xap.xap... Optional Packets MIDP Profile CLDC Configuration, KVM Operating System lication Framework Libraries Linux Kernel Dalvik VM + Core libraries Custom Frameworks Cocoa Touch UIKit Media Core Services Foundation Mach/BSD Kernel Silverlight Model Frameworks XNA UI Model Kernel Hardware Foundation HTML/JavaScript Common Language Runtime Cloud Integration Hardware Hardware Hardware Hardware 7

8 Challenges Heterogeneous Hardware Form factors Resources Device features (touch input, buttons, connectivity, sensors, ) Heterogeneous Software Platforms Execution environment Programming languages Platform APIs, UI Kit anatomy and programming model Tool chains Deployment and verification process User expectations Look and Feel Design guidelines Mobility Support 8

9 Terms and Definitions Device Platform A device platform is a combination of device hardware, operating system, runtime system, libraries, and frameworks forming a standard execution environment for applications on devices which run that platform. A device platform has a characteristic set of features: Specific look and feel (UI guidelines and interaction concepts) runtime defining app anatomy and lifecycle Developer tool chain (programming languages, libraries, APIs) Specific app distribution and deployment process Native is code which can be directly executed within the standard execution environment of the device platform. It has full access to the platforms libraries and frameworks, possibly also to operating system APIs and hardware features. 9

10 Terms and Definitions An is a specific type of applications created for and running on a particular device platform. A Native is an which is created for and can be deployed and started on a device platform whithout any further dependencies. A Mobile is typically created for and running on a mobile device platform. It s started from the home screen, supports graphically-oriented interactions and occupies the full screen. 10

11 Mobile Types Hybride Native Cross-Platform (+ Native Ext.) Interpreted Web Web browser Cross-Platform API Interpreter Device Platform 11

12 Cross-Platform Development roaches What to start with? Design Phase Implementation Phase Build Phase Execution Phase Mobile Device Model Source Executable Program 12

13 Cross-Platform Development roaches Model-driven Development Design Phase Implementation Phase Build Phase Execution Phase Model-to-Model- Mobile Device Model Model-to-- Source Executable Program 13

14 Cross-Platform Development roaches Cross-compilation to native code Design Phase Implementation Phase Build Phase Execution Phase Model-to-Model- Mobile Device Cross- / JIT- Machine Execution Model Model-to-- Source Executable Program 14

15 Cross-Platform Development roaches Support for abstract runtime Design Phase Implementation Phase Build Phase Execution Phase Model-to-Model- Mobile Device Cross- / JIT- AOT- / JIT- Machine Execution Model Model-to-- Source Byte Executable Program 15

16 Cross-Platform Development roaches Script languages Design Phase Implementation Phase Build Phase Execution Phase Model-to-Model- Mobile Device Cross- / JIT- AOT- / JIT- Machine Execution Model Model-to-- Source Byte Executable Program 16

17 Cross-Platform Development roaches Translate to other programming languages Design Phase Implementation Phase Build Phase Execution Phase Model-to-Model- Source-to-Source-Translation ( ) Mobile Device Cross- / JIT- AOT- / JIT- Machine Execution Model Model-to-- Source Byte Executable Program 17

18 Cross-Platform Development roaches Design Phase Implementation Phase Build Phase Execution Phase Model-to-Model- Source-to-Source-Translation ( ) Mobile Device Cross- / JIT- AOT- / JIT- Machine Execution Model Model-to-- Source Byte Executable Program 18

19 Translation roach Design Phase Implementation Phase Build Phase Execution Phase Model-to-Model- Translation roach Source-to-Source-Translation ( ) Mobile Device Cross- / JIT- AOT- / JIT- Machine Execution Model Model-to-- Source Byte Executable Program 19

20 roach Design Phase Implementation Phase Build Phase Execution Phase Model-to-Model- Translation roach Source-to-Source-Translation ( ) Mobile Device Cross- / JIT- AOT- / JIT- Machine Execution Model Model-to-- Source Byte Executable Program roach 20

21 Web-based roach Design Phase Implementation Phase Build Phase Execution Phase Model-to-Model- Translation roach Source-to-Source-Translation ( ) Mobile Device Cross- / JIT- AOT- / JIT- Machine Execution Model Model-to-- Source Byte Executable Program Web-based roach roach 21

22 Hybrid roach Design Phase Implementation Phase Build Phase Execution Phase Model-to-Model- Translation roach Source-to-Source-Translation ( ) Mobile Device Cross- / JIT- AOT- / JIT- Machine Execution Model Model-to-- Source Byte Hybrid roach Executable Program Web-based roach roach 22

23 Model-driven roach Design Phase Implementation Phase Build Phase Execution Phase Model-driven roach Model-to-Model- Translation roach Source-to-Source-Translation ( ) Mobile Device Cross- / JIT- AOT- / JIT- Machine Execution Model Model-to-- Source Byte Hybrid roach Executable Program Web-based roach roach 23

24 Many tools and approaches 24

25 Example EMODE Model-Driven roach Abstract Design Design Phase Refinement Implementation/Build Phase Execution Phase Source M-M Abstract UI Model M-C Concrete UI Model Task Model M-C Executable Task Model (EMODE-Runtime Environment) JavaME M-M Functional- Core-Adapter Model M-C FCA-... other Platforms Concept Model M-M Context- Model M-C Context- Provider- M-M = Modell-to-Modell- M-C = Modell-to-- Step-wise desing Models for UI and application logic Integrated tool environment to consistently develop UI and application logic 25

26 Bedrock Translation roach JavaME as common code base Parameterized code to customize code for different platforms Source-to-Source Transaltion to various programming languages Transformed code can be further edited Compatibility libraties per platform to bridge API-gap No DIE, but translation scripts, compatibility lib and cross-compiler Implementation Phase Source-to-Source- Translation JavaME- Source JavaME- Source Java-Source (Android) C++-Source Maschinencode C#- Source ActionScript HTML5, JavaScript Realisation in Bedrock Buildphase -, Compatibility Libraries... Cross- Cross- JavaME- Bytecode BlackBerry- Bytecode Dalvik- Bytecode Maschinencode CIL- CIL- ActionScript- Bytecode Integration of Platform-SDKs... Execution Phase Execution Execution JavaME BlackBerry Android ios, Bada, Symbian, WinMobile, webos, BREW,... Windows Phone Windows Desktop (.NET) Flash Player Browser 26

27 Implementierungsphase Buildphase XMLVM Translation roach Abarbeitungsphase.NET- Quellcode (C#, VB,...) Java- Quellcode Kompilierung CIL- Bytecode Kompilierung Java- Bytecode MBEL XMLVM- CLR, -DFA (XML) BCEL XSL XMLVM- JVM (XML) XSL XMLVM-CLR (XML) BCEL MBEL CIL- Bytecode Java- Bytecode.NET- Plattform Java- Plattform (Xcode: Cross-Kompilierung zu Maschinencode; Ausführung) Objective-C- Quellcode ios Ruby- Quellcode Kompilierung Ruby(YARV)- Bytecode BCEL = Byte Engineering Library MBEL = Microsoft Bytecode Engineering Library Ruby DX XMLVM-DEX (XML) XSL JavaScript- Quellcode C/C++- Quellcode Browser Cross-Kompilierung... Python- Quellcode... Realisierung durch XMLVM roach using m:1:n language translation XML as common language for byte code based on Java Bytecode based on XML Stylesheets Compatibility libraries used to port apps (even from Android to ios) 27

28 Qt Translation roach Implementierungsphase Buildphase Abarbeitungsphase Qt C++- Quellcode Präprozessor C++- Quellcode Maschinencode Cross- Kompilierung... Maschinencode Ausführung... Ausführung Symbian, MeeGo, Maemo, Windows, Linux, Mac OS Qt C++ as source Virtual toolkit Cross-platform libraries allow access to many device specific features (camera, contacts, Maps, GPS, Sensors, etc.) Qt Quick allows declarative description of touch-based Uis Interpreted in special runtime engine Currenty only Symbian, Maeme and MeeGo supported (Prototype for Android) 28

29 Adobe Air roach Implementierungsphase Buildphase Abarbeitungsphase AOT-Kompilierung Maschinencode Ausführung ios ActionScript- Quellcode Kompilierung ActionScript- Bytecode (separat zu installierende AIR-Laufzeitumgebung)... Android, Windows, Linux, Mac OS (integrierte AIR- Laufzeitumgebung) BlackBerry Tablet OS TV Specific AIR runtime engine + libraries declaratively described in MXML (special extensions to support touch-based interactions) description compiled to ActionScript code 29

30 Rhodes Mobile roach Implementation Phase Build Phase Execution Phase HTML-, CSS-, JavaScript- Source (Browser-Engine of Platform, WebView) BlackBerry- Bytecode BlackBerry Ruby- Source ode ios One Cross-platform Project Ruby- Bytecode (bundled VM) Android WinMobile Ruby, HTML, CSS and JavaScript as common code base in one project lication bundled with lightweight web server + Rhodes Ruby Framework + Ruby VM 30

31 Google Web Toolkit (GWT) Web-based roach Implementation phase Buildphase Execution phase Java-Source (Client) Source-to-Source- Translation JavaScript-, HTML-, CSS- Source Browser (Client) Java-Source (GWT Servlet) Java- Bytecode Java- Plattform (Servlet Container / Google Engine) Supports development of client and server side code for Web-lications in Java Source-to-Source translation to HTML, JavaScript and CSS (High-leve Translator JavaScript optimized for various browsers Mobile support with specific extensions of GWT libraries (GWTMobile, GWT-Mobile-Webkit) 31

32 Phone Gap Hybrid roach Combination of Webbased and Translation approach Web-technologies to create UI + logic Native to access specific device features like sensors, camera, etc. Cross-platform API for each target platform (PhoneGap JavaScript API) Native UI widgets are not supported ios PhoneGap Bib (JavaScript) ios PhoneGap Bib (Nativ) (Nativer Wrapper ) ios-plattform-api Projekt for ios HTML, CSS, JavaScript PhoneGap Cross-Platform-API for JavaScript Android PhoneGap Bib (JavaScript) Android PhoneGap Bib (Nativ) (Nativer Wrapper ) Android-Plattform- API Projekt for Android 32

33 Comparision Tool Supported Device Platforms Programming Language roach Execution Env. Generic parts Native - Widgets Supported Platform- Features Bedrock Android, Antix Game Player, bada, BlackBerry, BREW, Flash, ios (iphone, ipad), JavaME, Nintendo DS / DSi / DSiWare, Sony PSP / PSP Minis, Symbian, webos, Windows Mobile, Windows Phone 7, Browser (HTML5) Java (JavaME) Source-to-Source- Translation to C++, Java, C#, ActionScript, JavaScript; Plattform-SDK for Cross- native, no Qt Symbian, Maemo, MeeGo, Windows, Linux, Mac OS C/C++ Cross- native, Yes XMLVM ios, Android,.NET-Plattform, Java-Plattform, weitere Zielsprachen: JavaScript, Python, C++, Objective-C Adobe AIR ios (iphone, ipad), Android, Blackberry Tablet OS, Desktop-PCs, TV Kony Rhodes Titanium Mobile Sencha Touch Google Web Toolkit PhoneGap Android, ios, J2ME, BlackBerry, Symbian, Windows Mobile, Windows Phone 7, webos, BREW; Tablets: ios, Android, BlackBerry, webos; Android, BlackBerry, ios (iphone, ipad), Windows Mobile, Windows Phone 7 Android, ios (iphone, ipad), BlackBerry, Titanium Mobile Web SDK: Browser ios (iphone, ipad), Android, BlackBerry (incl. PlayBook) Java, Ruby, Sprachen der.net-plattform ActionScript, MXML Bytecode- native Yes Bytecode- / AOT- (ios) Lua Bytecode- / Source-to-Source- Translation, Cross- (ios) Ruby, HTML, of CSS, JavaScript scripting languages Bytecode- Engine / native Engine / native Engine, hybrid,,, JavaScript approach Engine, yes JavaScript, (HTML, CSS) JavaScript-lication- Framework Any device with Web browser Java Source-to-Source- Translation to HTML, CSS, JavaScript ios (iphone, ipad), Android (Smartphones, Tablets), webos, Symbian, BlackBerry, Windows Phone, bada Native, HTML, CSS, JavaScript partly yes Web, No Web, No Hybride roach hybride, no partly 33

34 Summary Strong fragmentation of market for mobile device platforms Cross-Platform frameworks try to bridge the gap Large number of tools following manifold approaches Methodology Target platforms Native features anatomy User interactions No tool fulfills all requirements In sum: instead of Write once, run everywhere it s more Write once, run many Possible strategy for projects 1. Web to support large set of platforms 2. Native s in addition for most important platforms 34

35 References Dirk Hering: Analyse von Methoden und Werkzeugumgebungen zur plattformunabhängigen Entwicklung mobiler likationen, Diplomarbeit, TU Dresden, 2010 Kramer, Dean ; Clark, Tony ; Oussena, Samia: MobDSL: A Domain Specific Language for multiple mobile platform deployment. In: 2010 IEEE International Conference on Networked Embedded Systems for Enterprise lications (NESEA), 2010, S. 1 7 Hamann, Thomas ; Hübsch, Gerald ; Springer, Thomas: A Model- Driven roach for Developing Adaptive Software Systems. DAIS 2008, Proceedings Bd. 053 (LNCS), pp , 2008 Kassinen, Otso ; Harjula, Erkki ; Koskela, Timo ; Ylianttila, Mika: Guidelines for the Implementation of Cross-platform Mobile Middleware. In: International Journal of Software Engineering and Its lications (IJSEIA) 4 (2010), Nr. 3, S Calvary, Gaëlle ; Coutaz, Joëlle ; Thevenin, David ; Limbourg, Quentin ; Bouillon, Laurent ; Vanderdonckt, Jean: A Unifying Reference Framework for multi-target user interfaces. In: Interacting with Computers 15 (2003), Nr. 3, S

36 References Adobe AIR: Bedrock: Google Web Toolkit: de-de/webtoolkit Kony Platform: PhoneGap: Qt: Rhodes: Sencha Touch: Titanium Developer: XMLVM: 36

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

Bridging the Gap: from a Web App to a Mobile Device App Bridging the Gap: from a Web App to a Mobile Device App or, so how does this PhoneGap* stuff work? *Other names and brands may be claimed as the property of others. 1 Users Want Mobile Apps, Not Mobile

More information

SYST35300 Hybrid Mobile Application Development

SYST35300 Hybrid Mobile Application Development SYST35300 Hybrid Mobile Application Development Native, Web and Hybrid applications Hybrid Applications: Frameworks Native, Web and Hybrid Applications Mobile application development is the process by

More information

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

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013 Mobility Introduction Android Duration 16 Working days Start Date 1 st Oct 2013 Day 1 1. Introduction to Mobility 1.1. Mobility Paradigm 1.2. Desktop to Mobile 1.3. Evolution of the Mobile 1.4. Smart phone

More information

Programming Mobile Apps with Python

Programming Mobile Apps with Python Programming Mobile Apps with Python Andreas Schreiber EuroPython 2012, Florence, Italy (July 3, 2012) Medando Mobile Health Apps Slide 2 My Blood Pressure Slide 3 Overview

More information

Cross-Platform Tools

Cross-Platform Tools Cross-Platform Tools Build once and Run Everywhere Alexey Karpik Web Platform Developer at ALTOROS Action plan Current mobile platforms overview Main groups of cross-platform tools Examples of the usage

More information

Development of mobile applications for multiple platforms

Development of mobile applications for multiple platforms Harwell Innovation Centre Building 173 Curie Avenue Harwell Oxford Didcot Oxfordshire, OX11 0QG +44 1235 838 531 www.redskiessoftware.com Development of mobile applications for multiple platforms By Darren

More information

Smartphone Application Development using HTML5-based Cross- Platform Framework

Smartphone Application Development using HTML5-based Cross- Platform Framework Smartphone Application Development using HTML5-based Cross- Platform Framework Si-Ho Cha 1 and Yeomun Yun 2,* 1 Dept. of Multimedia Science, Chungwoon University 113, Sukgol-ro, Nam-gu, Incheon, South

More information

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

Mobile App Infrastructure for Cross-Platform Deployment (N11-38) Mobile App Infrastructure for Cross-Platform Deployment (N11-38) Contents Introduction... 2 Background... 2 Goals and objectives... 3 Technical approaches and frameworks... 4 Key outcomes... 5 Project

More information

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

Issues of Hybrid Mobile Application Development with PhoneGap: a Case Study of Insurance Mobile Application DATABASES AND INFORMATION SYSTEMS H.-M. Haav, A. Kalja and T. Robal (Eds.) Proc. of the 11th International Baltic Conference, Baltic DB&IS 2014 TUT Press, 2014 215 Issues of Hybrid Mobile Application Development

More information

Mobile Phones Operating Systems

Mobile Phones Operating Systems Mobile Phones Operating Systems José Costa Software for Embedded Systems Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 2015-05-28 José Costa (DEI/IST) Mobile Phones Operating

More information

Review of Cross-Platforms for Mobile Learning Application Development

Review of Cross-Platforms for Mobile Learning Application Development Review of Cross-Platforms for Mobile Learning Application Development Nabil Litayem 1, 2, Bhawna Dhupia 1, Sadia Rubab 1 1 Computer Science and Information, Salman Bin Abdulaziz University Wadi College

More information

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

The open source cross-platform application development frameworks for smart phones The open source cross-platform application development frameworks for smart phones Naresh Babu M M, Y Sreeraman and E Purushotham Dept. of Information Technology, Sreenivasa Institute of Technology & Management

More information

Deployment of Mobile Application for Multiplatform Operating Systems

Deployment of Mobile Application for Multiplatform Operating Systems Deployment of Mobile Application for Multiplatform Operating Systems Sayali Kamble 1, Mitali Joshi 1, Shreya Kale 1, S. Mahajan 2 BE Students, Department of Information Technology, PVG COET, Pune, India

More information

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

Building Mobile Applications Creating ios applications with jquery Mobile, PhoneGap, and Drupal 7 Building Mobile Applications Creating ios applications with jquery Mobile, PhoneGap, and Drupal 7 Jeff Linwood 1st Chapter, Early Release Introduction... 3 Prerequisites... 3 Introduction to Mobile Apps...

More information

TAMZ I. (Design of Applications for Mobile Devices I) Lecture 1. Introducing Mobile Platforms. http://goo.gl/pze5o8

TAMZ I. (Design of Applications for Mobile Devices I) Lecture 1. Introducing Mobile Platforms. http://goo.gl/pze5o8 TAMZ I (Design of Applications for Mobile Devices I) Lecture 1 Introducing Mobile Platforms http://goo.gl/pze5o8 Contact Information Office: Address: EA-409 Dept. of Computer Science, FEECS VSB-TU Ostrava

More information

Comparison of Cross-Platform Mobile Development Tools

Comparison of Cross-Platform Mobile Development Tools 2012 16th International Conference on Intelligence in Next Generation Networks Comparison of Cross-Platform Mobile Development Tools Manuel Palmieri Innovation, Design and Engineering Mälardalen University

More information

Mobile Operating Systems. Week I

Mobile Operating Systems. Week I Mobile Operating Systems Week I Overview Introduction Mobile Operating System Structure Mobile Operating System Platforms Java ME Platform Palm OS Symbian OS Linux OS Windows Mobile OS BlackBerry OS iphone

More information

Developing multi-platform mobile applications: doing it right. Mihail Ivanchev

Developing multi-platform mobile applications: doing it right. Mihail Ivanchev Developing multi-platform mobile applications: doing it right Mihail Ivanchev Outline Significance of multi-platform support Recommend application architecture Web-based application frameworks Game development

More information

COMPARISON OF CROSS-PLATFORM MOBILE DEVELOPMENT TOOLS

COMPARISON OF CROSS-PLATFORM MOBILE DEVELOPMENT TOOLS COMPARISON OF CROSS-PLATFORM MOBILE DEVELOPMENT TOOLS Inderjeet Singh Mälardalen University Innovation, Development and Technology [email protected] Manuel Palmieri Mälardalen University Innovation,

More information

HYBRID APPLICATION DEVELOPMENT IN PHONEGAP USING UI TOOLKITS

HYBRID APPLICATION DEVELOPMENT IN PHONEGAP USING UI TOOLKITS HYBRID APPLICATION DEVELOPMENT IN PHONEGAP USING UI TOOLKITS RAJESH KUMAR Technical Lead, Aricent PUNEET INDER KAUR Senior Software Engineer, Aricent HYBRID APPLICATION DEVELOPMENT IN PHONEGAP USING UI

More information

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

Evaluating Cross-Platform Development Approaches (WORA Tools ) for Mobile Applications Evaluating Cross-Platform Development Approaches (WORA Tools ) for Mobile Applications Prof. Vijaya Jadhav Asst. Professor, ASM s IBMR, E-mail : [email protected] Prof. Haridini Bhagwat Asst. Professor,

More information

Mobile Application Development. Adopt Based On Fit

Mobile Application Development. Adopt Based On Fit Mobile Application Development Adopt Based On Fit Make Mobile Part of Overall Controls The revolution is only beginning Mobile application development is the process by which application software is developed

More information

ios SDK possibilities & limitations

ios SDK possibilities & limitations ios SDK possibilities & limitations Licensing Licensing Registered as an Apple Developer (free) Access to XCode3 and ios SDK ios, Mac and Safari Dev Center Resources No possibility of distribution of developed

More information

How to pick the right development model for your next mobile project

How to pick the right development model for your next mobile project How to pick the right development model for your next mobile project Conny Svensson Managing Architect and Strategist Mobility [email protected] @connysvensson ScanDev 2013 2 2 2 Web vs Native is irrelevant!

More information

Developing and deploying mobile apps

Developing and deploying mobile apps Developing and deploying mobile apps 1 Overview HTML5: write once, run anywhere for developing mobile applications 2 Native app alternative Android -- Java ios -- Objective-C Windows Mobile -- MS tools

More information

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

Lecture 4 Cross-Platform Development. <lecturer, date> Lecture 4 Cross-Platform Development Outline Cross-Platform Development PhoneGap Appcelerator Titanium Xamarin References Native Development Represents the baseline for comparisons You

More information

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

Multi-Platform Mobile Application Development Analysis. Lisandro Delía Nicolás Galdámez Pablo Thomas Leonardo Corbalán Patricia Pesado Multi-Platform Mobile Application Development Analysis Lisandro Delía Nicolás Galdámez Pablo Thomas Leonardo Corbalán Patricia Pesado Agenda 1. 2. 3. 4. 5. Introduction Multi-Platform Mobile Applications

More information

ipad, a revolutionary device - Apple

ipad, a revolutionary device - Apple Flash vs HTML5 ipad, a revolutionary device Apple Lightweight and portable Sufficient battery life Completely Wireless Convenient multitouch interface Huge number of apps (some of them are useful) No Flash

More information

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

Take full advantage of IBM s IDEs for end- to- end mobile development Take full advantage of IBM s IDEs for end- to- end mobile development ABSTRACT Mobile development with Rational Application Developer 8.5, Rational Software Architect 8.5, Rational Developer for zenterprise

More information

Cross-Compiling Android Applications to the iphone

Cross-Compiling Android Applications to the iphone Cross-Compiling Android Applications to the iphone Arno Puder San Francisco State University [email protected] The Team Core team: Arno Puder, SFSU Sascha Haeberling, Google Inc Wolfgang Korn, bluecarat AG

More information

Cross-Platform Mobile Application Development

Cross-Platform Mobile Application Development Cross-Platform Mobile Application Development Anirudh Nagesh, MS Student School of Information Studies, Syracuse University [email protected] Carlos E. Caicedo, Assistant Professor School of Information

More information

Cross-Platform Mobile Apps Solution

Cross-Platform Mobile Apps Solution Cross-Platform Mobile Apps Solution Prepared by Kevin Mullins CEO and Chief Developer Appracatappra, LLC. 709 Gale Street #8 Seabrook, TX 77586 [email protected] http://appracatappra.com Table

More information

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

Smart Phones Application development using HTML5 and related technologies: A tradeoff between cost and quality www.ijcsi.org 455 Smart Phones Application development using HTML5 and related technologies: A tradeoff between cost and quality 1 Yousuf Hasan, 2 Mustafa Zaidi, 3 Najmi Haider, 4 W.U.Hasan and 5 I.Amin

More information

Choosing a Mobile Application Development Approach

Choosing a Mobile Application Development Approach ASEAN Journal of Management & Innovation Vol. 1 No. 1, 69 74 by Stamford International University DOI: 10.14456/ajmi..4 ajmi.stamford.edu Choosing a Mobile Application Development Approach Phyo Min Tun

More information

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

How to Choose Right Mobile Development Platform BROWSER, HYBRID, OR NATIVE How to Choose Right Mobile Development Platform BROWSER, HYBRID, OR NATIVE Solutions Introduction: Enterprises around the globe are mobilizing mission-critical services. Businesses get streamlined due

More information

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

Mobile Development Frameworks Overview. Understand the pros and cons of using different mobile development frameworks for mobile projects. Mobile Development Frameworks Overview Understand the pros and cons of using different mobile development frameworks for mobile projects. Mobile Solution Frameworks One of the biggest technological decisions

More information

Technical and Business Challenges for Mobile Application Developers. Tony Wasserman Carnegie Mellon Silicon Valley Mobicase 2010

Technical and Business Challenges for Mobile Application Developers. Tony Wasserman Carnegie Mellon Silicon Valley Mobicase 2010 Technical and Business Challenges for Mobile Application Developers Tony Wasserman Carnegie Mellon Silicon Valley Mobicase 2010 The Growth of Mobile Applications From zero to 500,000 (or so) in 3 years!

More information

CROSS PLATFORM DEVELOPMENT The HTML5 Way

CROSS PLATFORM DEVELOPMENT The HTML5 Way CROSS PLATFORM DEVELOPMENT The HTML5 Way A Whitepaper by Rahul Joshi Business Analysis & Consulting Division Abstract With over half a dozen mobile platforms out there and more in line to come up, it has

More information

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

Lecture 3 Mobile App Development (Android, ios, BlackBerry, Windows Mobile) <lecturer, date> Lecture 3 Mobile App Development (Android, ios, BlackBerry, Windows Mobile) Outline Smartphones Developing Mobile Applications Android ios BlackBerry Windows Mobile References Cell phones

More information

Figure 6.1. Windows Phone 7 s hub-based interface, made up of live tiles and information aggregation

Figure 6.1. Windows Phone 7 s hub-based interface, made up of live tiles and information aggregation 6 Mobile Operating Systems Figure 6.1. Windows Phone 7 s hub-based interface, made up of live tiles and information aggregation Every phone needs some type of operating system to run its services: making

More information

An Analysis of Mobile Application Development Approaches

An Analysis of Mobile Application Development Approaches April 2014, HAPPIEST MINDS TECHNOLOGIES An Analysis of Mobile Application Development Approaches Author Umesh Narayan Gondhali 1 SHARING. MINDFUL. INTEGRITY. LEARNING. EXCELLENCE. SOCIAL RESPONSIBILITY.

More information

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

Analysis of Cross-Platform Development Frameworks for a Smartphone Pediatric Application 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

More information

Building native mobile apps for Digital Factory

Building native mobile apps for Digital Factory DIGITAL FACTORY 7.0 Building native mobile apps for Digital Factory Rooted in Open Source CMS, Jahia s Digital Industrialization paradigm is about streamlining Enterprise digital projects across channels

More information

Experimental Comparison of Hybrid and Native Applications for Mobile Systems

Experimental Comparison of Hybrid and Native Applications for Mobile Systems , pp. 1-12 http://dx.doi.org/10.14257/ijmue.2015.10.3.01 Experimental Comparison of Hybrid and Native Applications for Mobile Systems Seung-Ho Lim Department of Digital Information Engineering Hankuk University

More information

27th Embarcadero Developer Camp General Session

27th Embarcadero Developer Camp General Session 27th Embarcadero Developer Camp General Session John JT Thomas Director of Product Management [email protected] @FireMonkeyPM Market Statistics WHAT S HAPPENING? 2 The Client Revolution An Unprecedented

More information

MENDIX FOR MOBILE APP DEVELOPMENT WHITE PAPER

MENDIX FOR MOBILE APP DEVELOPMENT WHITE PAPER MENDIX FOR MOBILE APP DEVELOPMENT WHITE PAPER TABLE OF CONTENTS Market Demand for Enterprise Mobile Mobile App Development Approaches Native Apps Mobile Web Apps Hybrid Apps Mendix Vision for Mobile App

More information

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

To Study and Design a Cross-Platform Mobile Application for Student Information System using PhoneGap Framework To Study and Design a Cross-Platform Mobile Application for Student Information System using PhoneGap Framework Avinash Shrivas 1, Anandkumar Pardeshi 2 1 Associate Professor, Vidyalankar Institute of

More information

max firtman @firt firt.mobi martes 26 de julio de 11

max firtman @firt firt.mobi martes 26 de julio de 11 max firtman @firt firt.mobi who am I? mobile+web developer mobilexweb.com blog @firt where? where? buenos aires ~ argentina where? buenos aires ~ argentina patagonia soccer tango where? buenos aires ~

More information

Mobile Development with Qt

Mobile Development with Qt Mobile Development with Qt Developing for Symbian and Maemo Daniel Molkentin Nokia, Qt Development Frameworks 1 Yours Truly Developer and Promoter for the KDE Project since 2000 Author of The Book of Qt

More information

Publishing to TIZEN Using the Automated Conversion/Repackaging of Existing Android Apps. Hyeokgon Ryu, Infraware Technology, Ltd.

Publishing to TIZEN Using the Automated Conversion/Repackaging of Existing Android Apps. Hyeokgon Ryu, Infraware Technology, Ltd. Publishing to TIZEN Using the Automated Conversion/Repackaging of Existing Android Apps Hyeokgon Ryu, Infraware Technology, Ltd. Talking about Needs of Automated Converting from Android To Tizen Introduce

More information

Mobile Application Development

Mobile Application Development Web Engineering Mobile Application Development Copyright 2015 Slides from Federico M. Facca (2010), Nelia Lasierra (updates) 1 2 Where we are? # Date Title 1 5 th March Web Engineering Introduction and

More information

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

Best practices building multi-platform apps. John Hasthorpe & Josh Venman Best practices building multi-platform apps John Hasthorpe & Josh Venman It s good to have options Android 4.3 10 Tablet Windows 7 14 Laptop Windows 7 15 Laptop Mac OSX 15 Laptop ios 6 4.6 Phone Android

More information

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

Enabling Cordova (aka PhoneGap) on Tizen. René Pourtier / Luc Yriarte Enabling Cordova (aka PhoneGap) on Tizen René Pourtier / Luc Yriarte What is Cordova (aka PhoneGap)? An open-source standards-based development framework for building cross-platform mobile applications

More information

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

Leveraging Partners and Open Source Technology in your Mobility Strategy. emids webinar Thursday, August 11, 2011 1:00 pm 2:00 pm EDT Leveraging Partners and Open Source Technology in your Mobility Strategy emids webinar Thursday, August 11, 2011 1:00 pm 2:00 pm EDT Presenters Jerry Buchanan Account Director emids Technologies Ambarish

More information

Integrating Mobile into Your Cross- Platform Strategy with Qt

Integrating Mobile into Your Cross- Platform Strategy with Qt Integrating Mobile into Your Cross- Platform Strategy with Qt Tuukka Ahoniemi Technical Product Marketing Manager [email protected] Qt Developer Days 2014 Agenda Qt and Mobile Platforms

More information

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

place/business fetch details, 184 185 removefromfavorite () function, 189 search button handler bind, 190 191 B BlackBerry build environment Index A addtofavorite() method, 175 177, 188 189 Android ADT Plugin for Eclipse installation, 22 24 application, GWT Build Path, 244 device info, 247 directory structure, 244, 245 Eclipse classpath, 244

More information

Towards a Multi-Platform Development Based on MDA Approach

Towards a Multi-Platform Development Based on MDA Approach International Journal of Computer Networks and Communications Security VOL. 3, NO. 3, MARCH 2015, 103 109 Available online at: www.ijcncs.org E-ISSN 2308-9830 (Online) / ISSN 2410-0595 (Print) Towards

More information

Statement of Direction

Statement of Direction Mobile First: Taking Mobile CRM to the Next Level 1 January 2013 Mobile First: Taking Mobile CRM to the Next Level Whitepaper Mobile First: Taking Mobile CRM to the Next Level 2 Table of Contents Notes...

More information

Mobile Platforms And Apps Cross-Platforms Development Tools

Mobile Platforms And Apps Cross-Platforms Development Tools RESEARCH ARTICLE OPEN ACCESS Mobile Platforms And Apps Cross-Platforms Development Tools Serena Pastore* *(Astronomical Observatory of Padova, INAF, Italy) ABSTRACT Apps are the new model of application

More information

ArcGIS Web Mapping. Sam Berg, esri [email protected]

ArcGIS Web Mapping. Sam Berg, esri sberg@esri.com ArcGIS Web Mapping Sam Berg, esri [email protected] Agenda ArcGIS and WebMaps The APIs ArcGIS for Flex Viewer ArcGIS for Silverlight Builder ArcGIS for Sharepoint ArcGIS Application Templates ArcGIS Runtime

More information

Mobile Application Marketplace 2015: Market Analysis and Assessment of Future Evolution and Opportunities

Mobile Application Marketplace 2015: Market Analysis and Assessment of Future Evolution and Opportunities Brochure More information from http://www.researchandmarkets.com/reports/3245389/ Mobile Application Marketplace 2015: Market Analysis and Assessment of Future Evolution and Opportunities Description:

More information

Developing Cross-platform Mobile and Web Apps

Developing Cross-platform Mobile and Web Apps 1 Developing Cross-platform Mobile and Web Apps Xiang Mao 1 and Jiannong Xin * 2 1 Department of Electrical and Computer Engineering, University of Florida 2 Institute of Food and Agricultural Sciences

More information

Article. One for All Apps in HTML5

Article. One for All Apps in HTML5 One for All Apps The boom of smartphones and tablets in the consumer sector creates new problems for developers of industrial Apps: They have to build Apps quickly that run on any type of smartphone and

More information

Developing Applications for ios

Developing Applications for ios Developing Applications for ios Lecture 1: Mobile Applications Development Radu Ionescu [email protected] Faculty of Mathematics and Computer Science University of Bucharest Content Key concepts

More information

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

Cross-Platform Development: Target More Platforms and Devices with a Minimal Amount of Source Code Cross-Platform Development: Target More Platforms and Devices with a Minimal Amount of Source Code What is cross-platform development? Cross-platform development produces a single code base that can be

More information

MOBILIZE ME! APPS FOR MOBILE DEVICES OR MOBILE WEB APPS TECHNOLOGIES, TOOLS, ASSESSMENTS

MOBILIZE ME! APPS FOR MOBILE DEVICES OR MOBILE WEB APPS TECHNOLOGIES, TOOLS, ASSESSMENTS MOBILIZE ME! APPS FOR MOBILE DEVICES OR MOBILE WEB APPS TECHNOLOGIES, TOOLS, ASSESSMENTS The uptrend in mobile web apps is continuing. More and more people are tending to their private and professional

More information

Whitepaper. Trans. for Mobile

Whitepaper. Trans. for Mobile Whitepaper Trans forming Your Vision Into Winning Solutions How to Save 50%, 75% or more for Mobile Appp Development www.baytechservices.com Background As mobile access has transitioned from a nice to

More information

The Decaffeinated Robot

The Decaffeinated Robot Developing on without Java Texas Linux Fest 2 April 2011 Overview for Why? architecture Decaffeinating for Why? architecture Decaffeinating for Why choose? Why? architecture Decaffeinating for Why choose?

More information

QML and JavaScript for Native App Development

QML and JavaScript for Native App Development Esri Developer Summit March 8 11, 2016 Palm Springs, CA QML and JavaScript for Native App Development Michael Tims Lucas Danzinger Agenda Native apps. Why? Overview of Qt and QML How to use JavaScript

More information

Study of SAP ERP Connection System Driven in Smartphone

Study of SAP ERP Connection System Driven in Smartphone Study of SAP ERP Connection System Driven in Smartphone 1 Jong Youel Park, 2 Dea-Woo Park 1, First Author Hoseo Graduate School of Venture, [email protected] *2,Corresponding Author Hoseo Graduate School

More information

CiviMobile & CiviSync Mobile. Peter McAndrew Rohit Thakral

CiviMobile & CiviSync Mobile. Peter McAndrew Rohit Thakral CiviMobile & CiviSync Mobile Peter McAndrew Rohit Thakral Agenda Why to? How to? What to? Introduction to CiviMobile What the app looks like today? How does it work? How to install and test? What goes

More information

Computer Science. 232 Computer Science. Degrees and Certificates Awarded. A.S. Degree Requirements. Program Student Outcomes. Department Offices

Computer Science. 232 Computer Science. Degrees and Certificates Awarded. A.S. Degree Requirements. Program Student Outcomes. Department Offices 232 Computer Science Computer Science (See Computer Information Systems section for additional computer courses.) We are in the Computer Age. Virtually every occupation in the world today has an interface

More information

HTML5 the new. standard for Interactive Web

HTML5 the new. standard for Interactive Web WHITE PAPER HTML the new standard for Interactive Web by Gokul Seenivasan, Aspire Systems HTML is everywhere these days. Whether desktop or mobile, windows or Mac, or just about any other modern form factor

More information

Cross Platform Applications with IBM Worklight

Cross Platform Applications with IBM Worklight IJCSNS International Journal of Computer Science and Network Security, VOL.15 No.11, November 2015 101 Cross Platform Applications with IBM Worklight P.S.S.Vara Prasad and Mrs.S.Durga Devi Dept. of IT

More information

ni.com Remote Connectivity with LabVIEW

ni.com Remote Connectivity with LabVIEW Remote Connectivity with LabVIEW What Is Remote Connectivity? Local Monitoring 3 Remote Mobile Access 4 What Is Remote Connectivity Two machines talking to one another Client Server PC PC Consumes Data

More information

Introduction to Oracle Mobile Application Framework Raghu Srinivasan, Director Development Mobile and Cloud Development Tools Oracle

Introduction to Oracle Mobile Application Framework Raghu Srinivasan, Director Development Mobile and Cloud Development Tools Oracle Introduction to Oracle Mobile Application Framework Raghu Srinivasan, Director Development Mobile and Cloud Development Tools Oracle Safe Harbor Statement The following is intended to outline our general

More information

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

Survey, Comparison and Evaluation of Cross Platform Mobile Application Development Tools Survey, Comparison and Evaluation of Cross Platform Mobile Application Development Tools Isabelle Dalmasso, Soumya Kanti Datta, Christian Bonnet, Navid Nikaein Mobile Communication Department, EURECOM

More information

Development for Mobile Devices Tools from Intel, Platform of Your Choice!

Development for Mobile Devices Tools from Intel, Platform of Your Choice! Development for Mobile Devices Tools from Intel, Platform of Your Choice! Sergey Lunev, Intel Corporation HTML5 Tools Development Manager Optional: Download App Preview Android bit.ly/1i8vegl ios bit.ly/1a3w7bk

More information

Making Mobile a Reality

Making Mobile a Reality Making Mobile a Reality KIEFER CONSULTING CALIFORNIA DEPARTMENT OF TECHNOLOGY Introductions Scott Paterson California Department of Technology, Enterprise Solutions Harkeerat Toor Kiefer Consulting, Consultant

More information

Enterprise Mobile Application Development Strategies & Considerations for Building Mobile Apps

Enterprise Mobile Application Development Strategies & Considerations for Building Mobile Apps Enterprise Mobile Application Development Strategies & Considerations for Building Mobile Apps 3/19/2012 A Blueranger Consulting Research Note Author: David Bialer [email protected] 415 425-9800 Q:

More information

Mobile operating systems and apps development strategies

Mobile operating systems and apps development strategies Mobile operating systems and apps development strategies Serena Pastore INAF Astronomical observatory of Padova Padova, Italy [email protected] Abstract Apps are the new form of software that

More information

All About Android WHAT IS ANDROID?

All About Android WHAT IS ANDROID? All About Android WHAT IS ANDROID? Android specifically refers to a mobile operating system (based on Linux) that is developed by Google. It is open-source software, meaning that anyone can download the

More information

Enterprise Mobile Application Development: Native or Hybrid?

Enterprise Mobile Application Development: Native or Hybrid? Enterprise Mobile Application Development: Native or Hybrid? Enterprise Mobile Application Development: Native or Hybrid? SevenTablets 855-285-2322 [email protected] http://www.seventablets.com

More information

ADF Mobile Overview and Frequently Asked Questions

ADF Mobile Overview and Frequently Asked Questions ADF Mobile Overview and Frequently Asked Questions Oracle ADF Mobile Overview Oracle ADF Mobile is a Java and HTML5-based mobile application development framework that enables developers to build and extend

More information

Considerations Regarding the Cross-Platform Mobile Application Development Process

Considerations Regarding the Cross-Platform Mobile Application Development Process 40 Economy Informatics vol. 13, no. 1/2013 Considerations Regarding the Cross-Platform Mobile Application Development Process Marius POPA Department of Economic Informatics and Cybernetics Bucharest University

More information

Viability of developing cross-platform mobile business applications using a HTML5 Mobile Framework

Viability of developing cross-platform mobile business applications using a HTML5 Mobile Framework Viability of developing cross-platform mobile business applications using a HTML5 Mobile Framework Joshua Morony November 13, 2013 Supervisor: Paul Calder Submitted to the School of Computer Science, Engineering,

More information

KonyOne Server Prerequisites _ MS SQL Server

KonyOne Server Prerequisites _ MS SQL Server KonyOne Server Prerequisites _ MS SQL Server KonyOne Platform Release 5.0 Copyright 2012-2013 Kony Solutions, Inc. All Rights Reserved. Page 1 of 13 Copyright 2012-2013 by Kony Solutions, Inc. All rights

More information

Cross-Platform Phone Apps & Sites with jquery Mobile

Cross-Platform Phone Apps & Sites with jquery Mobile Cross-Platform Phone Apps & Sites with jquery Mobile Nick Landry, MVP Senior Product Manager Infragistics Nokia Developer Champion [email protected] @ActiveNick www.activenick.net Who is ActiveNick?

More information

Retool your HTML/JavaScript to go Mobile

Retool your HTML/JavaScript to go Mobile Retool your HTML/JavaScript to go Mobile @atdebonis 2008 Troy Web Consulting LLC All rights reserved 1 Overview What is PhoneGap? What is it good for? What can you use with it? Device Features Dev Tools

More information

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

White Paper INTRODUCTION. In mobile development, there are three different types of applications: PRE-SMARTPHONE MOBILITY NATIVE MOBILE APPLICATIONS INTRODUCTION The mobile development arena is growing very quickly, especially in the business-to-consumer (B2C) space. We are also seeing significant growth in business-to-business (B2B) enterprise applications

More information