Upload
dotitude
View
268
Download
3
Tags:
Embed Size (px)
Citation preview
1
Hybrid Mobile AppsUnderstanding
Ashan Fernando
2
Outline
• Global Smartphone Share• Mobile App Development• Native Apps
– Intro– Diversity– Pros & Cons
• Hybrid Apps– Intro– Skills Needed– Architecture– Support Frameworks– Pros & Cons– Suitability– Challenges
3
Global Smartphone Share
Period Android iOSWindows
PhoneBlackBerry
OS Others
Q4 2014 76.6% 19.7% 2.8% 0.4% 0.5%
Q4 2013 78.2% 17.5% 3.0% 0.6% 0.8%
Q4 2012 70.4% 20.9% 2.6% 3.2% 2.9%
Q4 2011 52.8% 23.0% 1.5% 8.1% 14.6%
In 2014 worldwide smartphone market shipped a total of 1.3 billion units
*http://www.idc.com/
4
Mobile Apps Development
*http://www.geospatialtraining.com/
5
Native Apps
6
Native Apps
• Binary executable files on the device.• Can access all API’s made available by OS vendor.• SDK’s are platform-specific.• Each mobile OS comes with its own unique tools
and GUI toolkit.
7
Native Apps: Diversity
* IBM, Native, web or hybrid mobile app development, 2012. IBM Software Thought Leadership White Paper
Different tools, languages and distribution channels associated with leading mobile operating systems
8
Native Apps: Pros & Cons
PROS
Easy low-level hardware access services.
Easy access to high level services important to personal mobile experience.
Full use of all functionalities that modern mobile devices have to offer.
High usability.
CONS
Code Reusability : Low
Development & maintenance: Time-consuming & expensive.
Designers are required to be familiar with different UI components of each OS.
Upgrade flexibility: Low.
9
Hybrid Apps
10
Hybrid Apps: Intro
• Combines native development with web technology.
• The web app runs inside a thin wrapper native app.
• The wrapper native app uses the OS API’s to create an embedded HTML rendering engine which provides a bridge between the browser and device API’s.
• The communication between web app and native app normally happens over JavaScript via custom built API’s.
11
Hybrid Apps: Skills needed
Additionally you need to refer hybrid frameworks API (E.g. PhoneGap)
Scenario: If you need to access camera, you need to know the JavaScript function provided by the framework and how to use it
12
Hybrid Apps: Architecture
http://www.geospatialtraining.com/
13
Hybrid Apps: Support frameworks
14
Hybrid Apps: Pros & Cons
PROS
Flexibility of web apps combined with feature richness of native apps.
Simplified deployment and immediate availability.
Leverage existing knowledge.
CONS
Poorer user experience as compared to native apps.
Access to advanced device capabilities normally restricted.
15
Is Hybrid Apps Suits You?
• Want to target multiple mobile platforms• Need faster time to market• Want to take advantage of device capabilities like
geolocation, accelerometer or the camera• Want the app to be useable when the device is
offline• More dynamic content which needs to be loaded
from remote service• Don’t need the advanced graphics performance
that you can only get from a native app
16
Challenges: UI Design
iOS Android
* http://www.adobe.com/devnet/phonegap/articles/creating-apps-with-phonegap-lessons.html
17
Challenges: Cross Platform Compilation
• Even hybrid apps need compilation• Your operating system might not support some
platform specific compilations– E.g. To compile iOS app you need a Mac PC/Laptop
• Solution– Use cloud services
• E.g. Apache PhoneGap Cloud Build
18
Thank you !