Naveen Danturi Pranay Mahendra So According to the Global Developer Survey 13 conducted by Telerik over 5000 developers said that they developed apps using HTML5 in 2012 and 90 of them plan to do so in 2013 ID: 694236
Download Presentation The PPT/PDF document "Cross Platform Mobile Application Develo..." is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Cross Platform Mobile Application DevelopmentNaveen DanturiPranay MahendraSlide2
So. . .According to the Global Developer Survey ’13 conducted by Telerik, over 5000 developers said that they developed apps using HTML5 in 2012 and 90% of them plan to do so in 2013. Only 15% of developers said they would prefer to use a native-only approach.Slide3
Platforms developers are looking forward to
Source: KendoUI.com
8%Slide4
Development Difficulty
Blackberry
and
iOS
are the
most
difficult platforms to develop
for
Windows 8 and Windows Phone 8 ranked as the easiest with Android falling in the middle.Slide5
Types of Apps being built using HTML5The
most important modern web technologies right now include forms and validation, databases and flexible layouts (grids,
flexbox
, etc.)Slide6Slide7
UsageApple’s iOS is the leading mobile OS in 30 countries. Canada-83.7%, United States at
35.2
%.
Android accounts for more than 50% of the mobile web traffic with South Korea at 78.3% and United States at 23.3%.
Blackberry is the leading mobile OS in four countries, Dominican Republic, 57.1% and United States, 32.0%
Symbian is the leading mobile OS in more than
100 countries,
Nokia’s Symbian-based phones are widely used in developing nations. However, it has almost no foothold in the US market. Slide8
Why Cross PlatformWhat your app will do? Who it’s for?
W
here
it will
run?
Do you maintain
different
and completely independent
apps for each platform?
Design a hybrid app with one code base?Pros and
cons?Slide9
Emerging Cross Platform FrameworksSlide10
Main Features Most of them use web based languages – HTML5, javascriptPerformance solely depends on the language being used.Provide Backend as a Service (MBaaS) which includes cloud storage, social networking and ‘push notifications’.Support Web Services ranging from JSON, XML, SOAP, HTTP etc.
These tools cannot access device specific feature like the
bluetooth
, NFC and other controls.
Source code is typically organized in the MVC format separating data tier, application and the interface.
Problem with compiling
iOS
ApplicationsSlide11
Developed by
Appcelerator
Inc.
Titanium is free and
opensource
Apps written in
javascript
Support to build Android,
iOS
and Blackberry Apps, trying to extend support for Windows.
Interpreter for Android and BlackBerry is MozillaRhino, for iOS JavascriptCore
Native experience – ‘not quite there’Source code organizationDevice Specific Functionality – No built in support for Bluetooth and NFC. Web services – SOAP, XML, JSON
Code maintenance MBaaS
support
TitaniumSlide12
Developed by
Adobe Systems
Free
and
opensource
Apps written in
HTML5, CSS3 and
Javascript
Support
for
Android, iOS, Blackberry, WebOS, Windows Phone, Symbian and Bada
.Apache Cordova is the heart of the backend.Performance limited because of hybrid nature of the app.
Source code organizationNo
built in support for Bluetooth and NFC.
No Web services support built in.
Cloud Compiler
PhoneGapSlide13
RhodesDeveloped by Motorola.Native app like feel. Apps written in Ruby and recently extended for JavaScript
Support to build Android,
iOS
, Blackberry
Apps,
Windows phone and Mobile.
Source
code organization
Device Specific Functionality – No built in support for Bluetooth and NFC.
Rich web service support built in.Free but not for commercial users.
RhoHub is their MBaaSSlide14
CoronaDeveloped by Corona Labs.Apps written in Lua.Free until app isn’t published.
Support to build Android,
iOS
, NOOK and Kindle Fire Applications.
Application is compiled using
Lua
libraries mashed with OpenGL and
OpenAL
.
Native controls using underlying libraryDevice Specific Functionality – No built in support for Bluetooth and NFC.
Web services – HTTP,HTTPS,SOAP, JSONCloud service is called Corona Cloud.Targeted for game developers.Slide15
MarmaladeDeveloped by Ideaworks3d.Upfront licensing.Apps written in C++Support
to build
iOS
, Android
, BlackBerry
PlayBook
OS, and
bada
.
Binary combined with Segundo Embedded Execution Environment (S3E) All device specific functionality except Bluetooth and NFC.
Web services – SOAP, XML, JSONMarmalade Juice – plan to port Objective C source code into Marmalade.Slide16
MonoCrossPart of the Mono ProjectBuilt on the .NET framework.C# is used to build apps.Support to build Android and
iOS
.
Specific platform tools –
Xamarin
Mono and
Xamarin
MonoTouch
.Interpreter for Android and BlackBerry is MozillaRhino, for iOS
JavascriptCoreNative experience – ‘not quite there’Source code organizationDevice Specific Functionality – No built in support for Bluetooth and NFC.
Windows Communication Foundation– Bing Maps APISlide17
Sencha TouchOver 50 built-in components.Built-in MVC systemApps written in HML5 and CSS3.
Sencha
Touch 2.2 is the latest
version
Faster
, Cheaper and highly customizable
PC developers can now create
iOS
applications without needing a Mac.
More than 500,000 developersRich
set of documentationSlide18
jQuery MobileBuilt on the rock-solid jQuery and jQuery UI foundationIts lightweight size
makes
it a speed freak
JQuery
Mobile
1.3.1 recently launched
AJAX-powered
navigation
systemExtensions are easy to makeNo established architecture
Easy to debugMarkup-based and is backed by a smart communitySlide19
What is good about CPD?Implement a feature once and share it across platformsUsing a webview might be faster than writing a native implementation for simple screens
Update
content without requiring a full app release by serving your pages off a
server
One
tool to create, debug, and deploy
.
Speed increases and cost decreases
Multiple
security methods aren’t neededSimple for web developers to useSlide20
ComplexitySlide21
ConsRequires a bridge for their pages to interact with native chrome and call native APIsMaintain a fork, if new functionality is addedWrite
a little code, run it on
iPhone, Android, Windows Mobile simulator.
Several
straightforward implementations for a single complex
implementation.
Harder
problems are inconsistencies in platform conventions
.
Maybe web technology will one day be as fast as native codeSlide22
What does it all boil down to?Slide23
Questions