hybrid mobile application framework
Post on 18-Oct-2014
7.393 views
DESCRIPTION
TRANSCRIPT
HYBRID MOBILE APPLICATION FRAMEWORK
http://iolo.pe.kr/
Backgrounds
Mobile Platforms in Action - 春秋戰國時代
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
Mobile Application Models
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
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
Alternative Mobile Application Models?
Development Cost
Applica
tion Q
uality
Native Mobile
Applications
Mobile Web
Applications
BEST
WORST
?
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
Positioning of Hybrid Mobile Application
Development Cost
Applica
tion Q
uality
Native Mobile
Applications
Mobile Web
Applications
BEST
WORST
Hybrid Mobile
Applications
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
Mobile Application Frameworks
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)
Titanium by Appcelerator
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
PhoneGap by Nitobi
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
Rhodes by Rhomobile
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
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
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*
…
…
May the Source be with You…