Mobile Development June 2015, TEIATH, Greece

Similar documents
Mobile Technologies. Types of Apps

Multi-platform Mobile App. Development with Apache Cordova

HTML5 Mobile App Development

Software Architecture Documentation for the JRC MYGEOSS app for Invasive Species project

By Stephen Cavell, Kerry Ellwanger, and Jack Livingston

VS005 - Cordova vs NativeScript

Mobile Application Strategy

Mobile Programming. Two Scenarios Web sites, like Tuubi where you read/write/download/ upload material

Mobile Development with Visual Studio 2015

Classification and Selection of Cross-Platform Tools. Michiel Willocx 17/06/2015

Cross-Platform Mobile Application Development

Mobile Application Development

PhoneGap. Andrew Lunny, Adobe. Monday, 23 July, 12

Oracle Utilities Customer Self Service

Review of Mobile Web Application Frameworks

Framework7 and PhoneGap. By Lars Johnson

Introduc6on to Android / ios Apps Programming

Cross pla)orm app development using open source so4ware. Peter Dickten / Marcus Ross dcs-fuerth / zahlenhelfer

PhoneGap Cross the Gap from HTML5 to Mobile OSCON Paul Beusterien July 19, 2012

Exploring Cross-platform Tools For Mobile Development: Lessons Learned. mlearning: Tips and Techniques for Development and Implementation

TAMZ I. (Design of Applications for Mobile Devices I) Lecture 1. Introducing Mobile Platforms.

Building Native Apps with ArcGIS API for JavaScript Using PhoneGap and jquery. Andy Gup, Lloyd Heberlie

Designing for the Mobile Web Lesson 4: Native Apps

Ionic Tutorial. For Cross Platform Mobile Software Development

Beginning PhoneGap. Mobile Web Framework for JavaScript and HTML5. Rohit Ghatol Yogesh Patel

WebSphere Puts Business In Motion. Put People In Motion With Mobile Apps

Choose OS and click on it

Cross Platform Development (Hybrid vs Native)

Getting started with Tabris.js Tutorial Ebook

Certified Cordova Developer VS-1124

HOW REACT NATIVE AND NATIVESCRIPT CHANGE YOUR MOBILE STRATEGY SEBASTIAN

HTML5 for mobile development.

QCon - Mobile Maps HTML5 Team Andrea

Hybrid mobile apps with Ionic and AngularJS. Jeremy Wilken. FOREWORD BY Adam Bradley MANNING

Case study on PhoneGap / Apache Cordova

D Integrated. Development. Environments. D Mobile Application. Development. Platforms. D Mobile Backend as a Service. Development.

CROSS PLATFORM APPLICATION DEVELOPMENT WITH COMPATIBLE GUI SOLUTIONS

P a g e 1. Danish Technological Institute. Scripting and Web Languages Online Course k Scripting and Web Languages

CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application

I, J, K. Eclipse, 156

Enterprise Architecture Building a Mobile Vision. David Hunt DCH Technology Services Gill Windall University of Greenwich

RAD Studio XE4 in Action LIVE! 14th May, 2013 Taipei Malcolm Groves

International Research Journal of Engineering and Technology (IRJET) e-issn: Volume: 05 Issue: 05 May p-issn:

Getting started with Convertigo Mobilizer

Building Mobile Apps with HTML5

Annals of the University of North Carolina Wilmington Master of Science in Computer Science and Information Systems.

Force.com Mobile Web with Sencha Touch

Mobile Application Development Concept

Index. Elad Elrom 2016 E. Elrom, Pro MEAN Stack Development, DOI /

Application Development for Mobile and Ubiquitous Computing

Developing Exceptional Mobile and Multi-Channel Applications using IBM Web Experience Factory

mgwt Cross platform development with Java

CROSS PLATFORM MOBILE APPLICATION FOR TRAINING AND PLACEMENT USING IONIC FRAMEWORK

Mobile Applications 2013/2014

Overview of BlackBerry Dynamics Platform

Build Tizen HTML5 Apps w/ Sencha Architect & Sencha Touch

CHAPTER. Introduction to Mobile Application Development

How to Convert a Simple Web Site into a Mobile App. Using PhoneGap Build, PhoneGap Desktop, PhoneGap CLI. Use Android Studio

A mobile campus project

Framework. Eric Bollens ebollens AT ucla.edu Mobile Web Framework Architect UCLA Office of Information Technology

California Polytechnic University San Luis Obispo. CSC Senior Project. Formal Report. Ciceroni ios App

Cordova - Guide - App Development - Basics

HTML5 Applications Made Easy on Tizen IVI. Brian Jones / Jimmy Huang

The C-Suite Guide to Mobile Technologies for mhealth Development. Medical Web ExpertsTM

2015 NALIT Professional Development Seminar September 30, Tools for Mobile App Development

Supported Devices, OS, and Browsers

Building Native Mapping Apps with PhoneGap: Advanced Techniques Andy

First Results of the Performance Analysis

Oracle Utilities Customer Self Service

COURSE OUTLINE MOC 20480: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3

There are two main workflows for working with Cordova projects, Web focused and Platform focused.

Aware IM Version 8.2 Aware IM for Mobile Devices

SEEM4570 System Design and Implementation. Lecture 1 Cordova + HTML + CSS

Sencha Paris Meetup Switching from Titanium to Sencha Touch: a real life example

Mobile Cross Platform Development. Igor Markov

Build a Mobile App in 60 Minutes with MAF

City of Mobile GIS Web Mapping Applications: New Technology, New Expectations

MOBILE DEVELOPMENT OPTIONS PRATIK PATEL CTO TripLingo

Build a Mobile App in 60 Minutes with MAF

Release Note - DaCdb Mobile

MOBILE DEVELOPER GUIDANCE

Enterprise Web Development

Challenge. Solution. Key Results. Multi Platform App Development Native A Case Study on Multi Platform App Development by Rawzor Technologies, India.

Developing Applications for ios

User Interfaces for Web Sites and Mobile Devices. System and Networks

Building and packaging mobile apps in Dreamweaver CC

JQuery Mobile: Up And Running By Maximiliano Firtman READ ONLINE

A Framework for Cross-platform Mobile Web Applications Using HTML5

Native Mobile Apps in JavaScript

Copyright 2012, Oracle and/or its affiliates. All rights reserved.

Mobile Development A Whirlwind Tour!

mlearning Tools in 60 Minutes. B.J. Schone, Qualcomm

CSS JavaScript General Implementation Preloading Preloading in the Design Thinking Process Preloading in the Summary View Android UI Design Design

An Empirical Analysis of Energy Consumption of Cross-platform Frameworks for Mobile Development

Software Platforms. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc.


Mobile Middleware Course. Mobile Platforms and Middleware. Sasu Tarkoma

Mobile development initiation

Mobile Web Appplications Development with HTML5

Interactive webmaps with ArcGIS. Kristel Meikas, AlphaGIS

Transcription:

Mobile Development June 2015, TEIATH, Greece

Presentation Overview 1. Introduction 2. Mobile Application Development 3. Cordova / Phonegap 4. Development Framework 5. Examples

1. INTRODUCTION

Introduction The world is going mobile Desktop sales are minimal Laptop sales are stable Smartphone sales are growing New types of hardware for mobility is appearing

A new connected mobile era Number of Connected Devices App Downloads

Motivations Most companies want a presence in the mobile world Market demands Product must have a mobile app App sales are increasing all over the world Internet of things

2. MOBILE APPLICATION DEVELOPMENT

Mobile Application Development Landscape Many operating systems Android, ios, Windows Phone, Bada, Firefox,etc. Many devices Phone, tablet, etc.

Mobile Application Development Landscape Many programming languages Java Objective-C, Swift C#, JavaME, etc. Fast changing landscape New OS versions New operating systems New features (NFC), etc.

Mobile Application Development Landscape Many development environments Android Studio XCode Visual Studio

Native Mobile Application Development Advantages Performance Native look and feel Small footprint Access to hardware Disadvantages Knowledge intensive Front-end and back-end Expensive To develop, to maintain Time consuming To develop, to maintain

Hybrid Application Development Code Common Interface Native libraries Common Interface Same code Interface 1 Interface 2 Interface 3 OS 1 OS 2 OS 3

Hybrid Application Development Combine native code with standard web technologies Offer a similar toolset Multiple platforms Code sharing

3. CORDOVA / PHONEGAP

What is Apache Cordova? Device APIs that allow a mobile app developer to access native device function such as the camera or accelerometer from JavaScript

What is Adobe Phonegap? Open-source mobile development framework Developed by Nitobi Software Bought by Adobe Enables building of mobile device applications using JavaScript, HTML and CSS Underlying PhoneGap there is Apache Cordova Others: Intel XDK, Appery.IO, appgyver Steroids, Iconic, etc.

Apache Cordova / Phonegap Can access hardware features Accelerometer, Camera, Compass, Geolocation, Storage, Media, Notification, Files Contacts, Barcodes, Etc Many third-party extensions

How does it work?

Phonegap Advantages Cross-platform Single code base for all platforms: ios, Android, WP 7 Mango, mobile web Possible to take advantage of distribution and integrated payment via App Store or Android Market Disadvantages Poor performance if app is graphically intense, i.e. a game. Lack of pre-built UI widgets, transitions, standard controls, etc. For the most part a native app is much faster/smoother than mobile web app

Phonegap: Supported features by OS (May 2015) Feature iphone /iphone 3G iphone 3GS and newer Android 1.0 4.4 Windows Phone BlackBerry 10 and PlayBook OS BlackBerry OS 4.6 4.7 BlackBerry OS 5.0-6.0+ Bada Symbian webos Tizen Ubuntu Touch Firefox OS Acceleromet er Yes Yes Yes Yes Yes N/A Yes Yes Yes Yes Yes Yes Yes Camera Yes Yes Yes Yes Yes N/A Yes Yes Yes Yes Yes Yes Yes Compass N/A Yes Yes Yes Yes N/A N/A Yes N/A Yes Yes Yes Yes Contacts Yes Yes Yes Yes Yes N/A Yes Yes Yes N/A Yes N/A Yes File Yes Yes Yes Yes Yes N/A Yes N/A N/A N/A Yes Yes N/A Geolocation Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Media Yes Yes Yes Yes Yes N/A N/A N/A N/A N/A Yes Yes N/A Network Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Notification (alert, sound, vibration) Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Storage Yes Yes Yes Yes Yes N/A Yes N/A Yes Yes Yes Yes Yes

Alternatives to Phonegap Appcelerator Titanium Xamarin Rho Corona MoSync

4. DEVELOPMENT FRAMEWORK

Phonegap Library PhoneGap is just a library that you must include in your app Couple of JavaScript and xml files What is PhoneGap doing? PhoneGap generates a out-ofthe-browser window that executes the HTML and JavaScript Due to a couple of xml and jar/dll files it enables the usage of native APIs

Web Framework Based on standard technologies HTML5, CSS3 and JavaScript DOM manipulation? Jquery User Interface? Jquery Mobile, supported by W3C

Jquery Mobile: Page structure <!DOCTYPE html> <html> <head> <title>page Title</title>... </head> <body> <section data-role="page"> <header data-role="header"> <h1>some Title</h1> </header> <article data-role="content"> <h1>the Content</h1> </article> <footer data-role="footer"> <h1>some Footer</h1> </footer> </section> </body></html>

Jquery Mobile: Touch Events tap After a quick, complete touch event taphold After a held complete touch event swipe Horizontal drag of 30px or more, within 1 second swipeleft When a swipe event occurred moving in the left swiperight When a swipe event occurred moving in the right

JQM: ThemeRoller

Jquery Mobile: Demos

Some alternative Web Frameworks Ionic Mobile Angular UI Intel XDK Appcelerator Titanium Sencha Touch Kendo UI

5. HANDS-ON

Frameworks setup: Instalation Install node.js (https://nodejs.org/) On command line: npm install g phonegap Npm install g plugman

Create App & Add platform Go the folder where you want your app: Phonegap create myapp com.home.myapp MyApp Enter the just created folder (myapp): Phonegap platform add android Phonegap platform add ios

Add plugins In the project folder: Phonegap plugin add org.apache.cordova.device Phonegap plugin add org.apache.cordova.console

Inside the project s folder The www folder contains the HTML / JavaScript application. Inside the www folder there are other folders for specific app files. The platforms folder is where Cordova will build your application for different platforms (ios, Android, etc). The contents of these folders are automatically generated by the Cordova CLI. Plugins are installed in the plugins directory. Application parameters (name, author, etc) are stored in config.xml.

Build & Run Application For Android, on the project folder Phonegap build Phonegap run android For ios, on the project folder Phonegap build ios Npm install g ios-sim (or sudo npm install g ios-sim) Phonegap emulate ios

Debug Computer On the project folder Phonegap serve Mobile Device

Distribute: Phonegap Build

Who is using Hybrid Application Frameworks?

FINAL NOTES

Main References Apache Cordova https://cordova.apache.org/ Adobe Phonegap http://phonegap.com/ http://phonegap.com/about/artwork/ Apache Cordova Tutorial https://ccoenraets.github.io/cordova-tutorial/index.html JQueryMobile https://jquerymobile.com/

Thank you! Any questions? Luis Coelho (luiscoelho@eseig.ipp.pt)