Cross-platform solutions for Mobile App Development Moldova ICT Summit 2011 IT4Developers Alexandru Catariov 19/05/2011
Jan 28, 2015
Cross-platform solutions for Mobile App Development
Moldova ICT Summit 2011
IT4Developers
Alexandru Catariov
19/05/2011
• Introduction
•Mobile Apps Market Overview
•Mobile Apps Native Development
Overview
• Cross-platform solutions
• Conclusions
Agenda
2
IN YOUR ZONE
Introduction
3
• Popular mobile devices : Mobile Phones, PDAs, Smartphones, Tablets, Carputers, Netbooks
• Popular mobile devices features: Wi-Fi, touch screen, GPS, Camera, Sensors(Accelerometers, Compass)
• Mobile App features: GPS Location & navigation, Maps, Augmented Reality, Media Player, Social
Networks, Reminders, VOIP, Networking, Push Notification, Games and many others.
• The most popular mobile platforms: iOS(iPhone, iPod touch, iPad) , Android, Windows Mobile(Phone),
Symbian, Blackberry.
• The popularity is not geographical the same
• Big PLAYERS: Apple, Google, Microsoft, Nokia, Intel, Samsung, RIM
• World Mobile Apps Market Worth US$25 Billion by 2015
IN YOUR ZONE
Market share by Mobile platforms
4
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
2007 2008 2009 2010
Other OSs
Windows Mobile
iOS
BlackBerry
Android
Symbian
Source: Gartner
IN YOUR ZONE
Mobile App Distributions
5
Companies Application Stores Platforms Available Apps
Apple App Store iOS 350,000
Nokia Ovi Store Symbian, Maemo, Meego 55,000
Microsoft Windows Phone Marketplace
Windows Phone 7 17,500
Google Android Market Android 294,000
RIM BlackBerry App World BlackBerry 31,000
IN YOUR ZONE
Mobile App Categories Popularity
6
1. Games
2. Music & entertainment
3. Social networking
4. Mail & Messaging
5. News & Current events
6. Weather
7. Sports
8. Health & fitness
9. Shopping & retail
10.Books & reference
1. Location-based services (LBSs)
2. Social networking.
3. Mobile search.
4. Mobile commerce.
5. Mobile payment.
6. Context-aware service.
7. Object recognition.
8. Mobile Instant messaging (MIM).
9. Mobile e-mail.
10.Mobile music/video.
Top 10 Mobile Application Categories by Mobilemix
Top-10 list of categories(excluding games) of consumer mobile apps in 2012 by Gartner
IN YOUR ZONE
Mobile App Native Development
7
Platforms Technologies Development Tools Development Platforms
iOS Objective-C, iPhone SDK
XCode IDE Mac OS X
Android Java, C/C++ Eclipse Windows, Linux
Symbian, Maemo, MeeGo
C++, QML, Qt framework, platform SDK
Qt Creator Windows, Linux, Mac OS X
Windows Mobile C/C++,C#, .NET compact framework
MS Visual Studio 2005-2010 Windows
Windows Phone 7 C#, .NET, Silverlight, XNA Visual Studio 2010, Expression Blend
Windows
BlackBerry Java, Blackberry Java SDK Eclipse , Blackberry JDE Windows, Mac OS X
• Native development means: using native technologies, native tools, native UX, native API etc.
• The native development solutions are provided by platform owner
• All solutions have simulator tools, but usually they are very slow
• The native solutions are free
IN YOUR ZONE
Cross-platforms solutions arguments
8
•Mobile App Market shared between several popular platforms.
• Different technologies and API for each mobile platform
• Each technology requires particular skills, tools and resources for development
• For each platform the native solution requires the app to be built from scratch.
• Each native solution requires additional management, testing and maintenance
effort.
•More powerful hardware
• Similar hardware parameters: screen size, touch screen, front camera, accelerometer
•Mobile apps tend to be more independent of the hardware platforms
• Porting existing applications from other platforms: desktop, web
IN YOUR ZONE
Cross-platform solutions – native technologies based
9
Platform Technologies Supported platforms License
Airplay SDK C/C++
Android, iOS, webOS, Bada, Symbian, Windows Mobile
commercial licence avalable
MoSync C, C++, Lua Windows Mobile, Symbian, Android, iOS, Moblin, MeeGo
Free, GPL 2.0. commer. licence avalable
alcheMo
Java ME iPhone, Android, Windows Mobile
commercial licence avalable
Celsius Java ME Android, BlackBerry, iPhone, Symbian, Windows Mobile
commercial licence avalable
Bedrock Java ME
Android, BlackBerry, BREW, webOS, iOS, Bada, Symbian, Windows Mobile, Windows Phone 7
commercial licence avalable
TotalCross Java ME Android, BlackBerry, iOS, Palm OS, Windows Mobile.,Symbian
License per device
Qt SDK C/C++, QML, Symbian, Maemo, MeeGo Free. Open source
IN YOUR ZONE
Cross-platform solutions – web technologies based
10
Platform Technologies Supported platforms License
Adobe Air HTML, JavaScript, Flex, Flash
Android, iOS, MeeGo, BlackBerry
Free
PhoneGap CSS3, HTML5, JS. iOS, Android, Blackberry, WebOS, WP7 ,Symbian
free and open source under the MIT License
OpenPlug Action Script, Java Script, XML
iOS, Android, Windows Phone, Symbian
Free & commercial licenses available
WorkLight HTML, CSS, JS BlackBerry, Android, iOS, Commercial licenses available
Appcelerator Titanium
Java Script, HTML, CSS Android, iOS, BlackBerry Apache 2.0 license, comm. licenses avail.
RhoMobile HTML, CSS, JS, Ruby BlackBerry, Android, iOS, free and open source under the MIT License
WidgetPad CSS3, HTML5, JS. iOS, Android , WebOS free and open source
IN YOUR ZONE
Adobe Air
11
• The Adobe® AIR® runtime enables developers to use HTML, JavaScript, Flex and Flash Builder
software to create high-performance mobile apps.
• Supported mobile platforms: Android, iOS, BlackBerry, Windows 7(Slate), MeeGo
• Features:
• Multi-touch, gestures, HTML5/CSS3, Local API’s (Location, Accelerometer, Microphone,
Camera, Contacts etc.), SQLite, Action Script 3 with JIT compiler and others.
• Advantages:
• Faster development, declarative UI programming, mature framework and others
• Disadvantages
• Requires AIR runtime, Prone to restriction on iOS, Troublesome handling of different
resolutions, few mobile-optimized controls
IN YOUR ZONE
Adobe Air Examples
12
Native iPhone App Adobe Air Android App
IN YOUR ZONE
PhoneGap
13
• PhoneGap is an HTML5 app platform that allows you to author native applications
with web technologies and get access to APIs and app stores.
• Supported mobile platforms: Android, iOS, Palm OS, BlackBerry, Symbian OS
• Features:
• WebKit (HTML5/CSS3/JavaScript), Local API’s (Location, Accelerometer,
Microphone, Camera, Contacts etc.), SQLite, Bridges between native
implementations and JavaScript
• Phone Gap is usually used with some touch Java Script frameworks
• Sencha touch – more mature for mobile development
• JQuery Touch – works well just for iPhone development
IN YOUR ZONE
PhoneGap Examples
14
IN YOUR ZONE
Appcelerator – Titanium Mobile
15
• Supported platforms: iOS, Android, BlackBerry(Beta)
• Uses native UI components that are controlled by Titanium JavaScript framework
• Near-native performance
• Custom Development & Deployment tool (Titanium Developer)
• Native UI is built in JavaScript only
IN YOUR ZONE
RhoMobile
16
• Supported platforms: iOS, Android, BlackBerry, Windows Mobile, Windows Phone 7,
Symbian
• Fully implements MVC
• Local light-weight web server
• Ruby back-end
• HTML5/CSS3 front-end (Compiles to Ruby)
• Contains AppGenerator (create Rhodes applications, models, and tests)
• Custom Simulator
• Custom Debugger
• Enterprise solutions (RhoSync)
• Deployment server (builds app for all platforms - RhoHub)
IN YOUR ZONE
Cross-platform solutions for game development
17
• AirPlay SDK
• Supported mobile platforms: iOS, Android, Symbian, Bada, Windows Mobile, webOS, Maemo
• Uses C/C++ and standards IDEs such as: Visual Studio C++ and Xcode.
• Can be used for development of various rich mobile apps
• Full license costs - 2500$ per seat per year. Indie License – 100$ per seat per year.
• ShiVa Engine
• Supported mobile platforms: iOS, Android, webOS
• Uses C/C++, Lua, OpenGL, DirectX, Object-Oriented Design, Built-in Graphic Editors.
• Full license costs - 1500$. For students and researchers – 170$.
• Unity
• Supported mobile platforms: iOS, Android
• Uses C# & Java Scripts, OpenGL, DirectX, Object-Oriented Design, Built-in Graphic Editors.
• Full license costs - 1500$. Indie License - free.
IN YOUR ZONE
Conclusions
18
•May have performance issues
• Non pure-native look & feel
• Limited API set
• Support for integration with native API and native UI components
•Web technologies based – CSS, JS, HTML.
• For rich mobile apps and for low cost porting.
• Native technologies based – C/C++, Java ME.
• Can be used for mobile game development
• A big number of solutions
•Many of them are commercial and cost a lot, but the indie license is not so expensive.
IN YOUR ZONE 19
Alexandru Catariov | Deputy Head of Development Endava Moldova
Tel +373 790400205 |Skype alex.catariov
thank you