hybrid mobile application framework

24
HYBRID MOBILE APPLICATION FRAMEWORK http://iolo.pe.kr/

Post on 18-Oct-2014

7.393 views

Category:

Technology


2 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Hybrid Mobile Application Framework

HYBRID MOBILE APPLICATION FRAMEWORK

http://iolo.pe.kr/

Page 2: Hybrid Mobile Application Framework

Backgrounds

Page 3: Hybrid Mobile Application Framework

Mobile Platforms in Action - 春秋戰國時代

Page 4: Hybrid Mobile Application Framework

Mobile Platforms - Developer’s Considerations

Android iPhoneOS Symbian

OS Blackberry

OS Palm

WebOS Windows Mobile

MeeGo Bada

Vendor Google Apple Nokia,Sony,

Ericsson RIM Palm Microsoft Intel, Nokia Samsung

Kernel Linux OSX/Darwin Symbian

OS Blackberry

OS Linux

Windows CE

Linux Nucelus OS

SDK Java(Dalvik), C/C++(NDK)

Objective-C, HTML/CSS/JavaScrpt(DashCode)

C++(QT),HTML/CSS/JavaScript(WRT)

C++, Java(ME)

HTML/CSS/JavaScript

C++/C#/VB(.NET),

Silverlight

C++(QT),C(GTK)

C++

Web Browser

WebKit/Chrome, Opera

Mini

WebKit/Safari

RIM, Opera Mini

WebKit, Opera Mini

WebKit IE Mobile, Opera Mini

Gecko/Fennec, WebKit

Dolphine

AppStore Android Market

App Store Nokia OVI Blackberry App World

Palm WebOS

App Store

Windows Market pace

MeeGo Software

Samsung App Store

Page 5: Hybrid Mobile Application Framework

Mobile Application Models

Page 6: Hybrid Mobile Application Framework

Native Mobile Application

Utilize the Platform/Vendor Specific Native SDK

Programming Languages

C/C++

Objective-C

Java/Dalvik

Java/ME

C#/.NET

HTML/CSS/JavaScript

Frameworks/Libraries

CocoaTouch, CoreGraphics, CoreAnimation, …

WPF, Silverlight

OpenGL/ES

QT, GTK

Symbian WRT

Development Environment

Eclipse with various plugins

Andorid SDK / NDK

Xcode/OSX, DashCode

GCC toolchain

Mobile

Device

Native

SDK

Web

Browser

Page 7: Hybrid Mobile Application Framework

Mobile Web Application

Utilize the Built-in Web Browser

Server-side Mobile Web Application

Client-side Mobile Web Application

Programming Languages

HTML/CSS/JavaScript

Frameworks/Libraries

jQuery, DojoToolkit, Prototype/Scriptaculuous, …

Development Environment

Web Browser with Firebug…

Mobile

Device

Native

SDK

Web

Browser

Page 8: Hybrid Mobile Application Framework

Alternative Mobile Application Models?

Development Cost

Applica

tion Q

uality

Native Mobile

Applications

Mobile Web

Applications

BEST

WORST

?

Page 9: Hybrid Mobile Application Framework

Hybrid Mobile Application

Client-side Mobile Web Application with the Boilerplate Native App

Embed the Built-in Web Browser as a Platform Runtime

Create a Boilerplate Native App as an Web Application Launcher

Programming Languages

More “Experienced” HTML/CSS/JavaScript

Native Support

C/C++, Objective-C, C#/.NET, …

Frameworks/Libraries

Light-weight JavaScript Frameworks for Mobile

jQTouch, iUI, …

Native Support

Titanium

PhoneGap

Rhodes

Development Environment

Web Browser with Firebug …

Device Specific Packaging Tools

Mobile

Device

Native

SDK

Web

Browser

Page 10: Hybrid Mobile Application Framework

Positioning of Hybrid Mobile Application

Development Cost

Applica

tion Q

uality

Native Mobile

Applications

Mobile Web

Applications

BEST

WORST

Hybrid Mobile

Applications

Page 11: Hybrid Mobile Application Framework

Web Standards

Platform Specific Native SDK

Mobile Application Models

iPhone SDK

Hybrid Mobile Applications

HTML5 CSS JavaScript

Platform Dependant Device API

Android SDK/NDK

.NET Mobile …

UI Toolkit JavaScript Frameworks/Libraries

Platform Independent Device API

Mobile Web Applications Native Mobile Applications

Built-in Web Browser

Proprietary Frameworks

Native Libraries

Proprietary UI Toolkit

Proprietary Development Environment

Page 12: Hybrid Mobile Application Framework

Mobile Application Frameworks

Page 13: Hybrid Mobile Application Framework

Titanium by Appcelerator

Home Page

http://www.appcelerator.com/

Features

Adobe AIR-like RIA style framework

Supported Devices

Desktop (Windows/Mac/Linux)

Android, iPhone

iPad(BETA), Blackberry(BETA), WM(unofficial)

Programming Language

JavaScript(UI, Device API, …), HTML, CSS

License

OSS(APL2). Commercial Tech. Support/Education

Community(Free)/Professional($199/M)/Enterprise($499/M)

PROS

Built-in UI Toolkit

Desktop support(embedded WebKit)

CONS

Built-in UI Toolkit

Buggy development tools(Titanium Developer)

Page 14: Hybrid Mobile Application Framework

Titanium by Appcelerator

Page 15: Hybrid Mobile Application Framework

PhoneGap by Nitobi

Home Page

http://phonegap.com/

Features

Custom DAP with natvie mobules for various Mobile Platforms

jQuery-like JavaScript libraries

Supported Devices

iPhone, Android, Blackberry

WM(unofficial), Symbian/WRT(unofficial), Palm/WebOS(unofficial), Maemo(unofficial)

Programming Language

JavaScript(Device API), HTML, CSS

License

OSS(MIT License). Commercial Tech. Support / Education

PROS

Full-featured mobile device emulator (PhoneGap Simulator)

Plenty document / active developer community

CONS

Manual build/deploy with Ruby

No bult-in UI Toolkit

Page 16: Hybrid Mobile Application Framework

PhoneGap by Nitobi

Page 17: Hybrid Mobile Application Framework

Rhodes by Rhomobile

Home Page

http://rhomobile.com/products/rhodes/

Features

RoR-like framework with embedded ruby(erb)

Offline-Online Sync(RhoSync; commercial).

Virtualized online development/test environment (RhoHub; commercial)

Supported Devices

iPhone, Blackberry, WM, Symbian, Android

Programming Languages

Embedded Ruby, Javascript(UI Toolkit, Device API, …) HTML, CSS

License

OSS(GPLv3). For commercial application $500/App(No user limit)

PROS

Various supported devices

Virtualized online development/test environment

CONS

Unfamiliar framework

GPL

Page 18: Hybrid Mobile Application Framework

Rhodes by Rhomobile

Page 19: Hybrid Mobile Application Framework

JavaScript UI Toolkits

jQTouch http://jqtouch.com/

jQuery plugin

Optimized for mobile browser

iPhone/WebKit dedicated features

Custome theme support

OSS(MIT)

iUI http://code.google.com/p/iui/

The first JavaScript UI Toolkit for iPhone

DashCode-like light-weight JavaScript UI Toolkit

Web standard oriented HTML/CSS.

Custom theme support

OSS(BSD)

Platform-specific Mobile Web Frameworks DashCode/XCode

Symbian/WRT

Palm/WebOS

Page 20: Hybrid Mobile Application Framework

Mobile Application Frameworks

Cost Productivity UI Device Control

Supported Devices

Developer Pool

Standard-aware

Native X X O O X △ X

Web O O X X O O O

Titanium △ △ △ △ △ X X

PhoneGap △ △ X △ △ X △

Rhodes X △ △ △ △ X X

? O O O O O O O

Page 21: Hybrid Mobile Application Framework

Hybrid Mobile Application Framework

Page 22: Hybrid Mobile Application Framework

Hybrid Mobile Application Framework

Device Dependant Impl(native)*

Device Independant API( javascript)

iPhone Objective-C

Android Java/Dalvik

WM C++/C#/.NET

Web Standards

Device API Wrapper( javascript)*

HTML5 CSS3 JavaScript

BONDI/DAP/WA impl(native)

UI Toolkit*

Mobile Platforms with “State of the Art” Browser

Development Lifecycle Management Tools*

Application Framework*

Mobile Device Simulator*

Page 23: Hybrid Mobile Application Framework

Page 24: Hybrid Mobile Application Framework

May the Source be with You…