SlideShare a Scribd company logo
The risks you take
when develop cross-
platform apps using
HTML5
Anton Sakharov
CEO/CTO, MLSDev
sakharov@mlsdev.com
Vinnytsia, Ukraine
Kraków, Poland
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
Cross-platform app frameworks
● Apache Cordova / Adobe PhoneGap
● Appcelerator Titanium
● Sencha Touch
● Intel XDK - runs on Cordova
● IONIC - Angular-based UI framework
● Xamarin - C#, not HTM5
● RubyMotion - not HTML5
● ...
HTML5 apps
Image taken from cordova.apache.org
Images taken from cordova.apache.org
App (HTML, CSS, JS)
Hardware
Web View
OS
HTML5 cross-platform framework
Native part of cross-platform framework
Apache Cordova/Adobe PhoneGap
Images taken from cordova.apache.org
Appcelerator Titanium
Images taken from cordova.apache.org
Images taken from appcelerator.com
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
Write Once, Run Anywhere
Sun Microsystems about Java
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
Risks
● Framework lock-in
● Compatibility
● Cross-browser markup
● Bugs in frameworks
● Performance
● Reverse Engineering
Framework lock-in
Your app
Hardware
Web Browser Engine (e.g. WebKit)
Core OS
3rd-party frameworks
(Cordova, Titanium etc)
What can you do here?
● Develop native plugins for you cross-
platform framework
● Sacrifice some features of your project
Compatibility
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
Few more
● Back button on Android, no Back button on iOS
● Touch events different behaviour from platform
to platform
● IndexedDB
● ...
Image taken from caniuse.com
Cross-browser
markup
Web Browser Engines
● WebKit (Apple Safari, Android Browser)
● Blink (Chrome)
● Trident (Internet Explorer)
● Gecko (Firefox)
● Presto (Opera)
● ...
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
Few options
● Test on all kind of devices you want your app to
support (iPhones, iPads, Androids etc) - must
have, in fact
● Use UI frameworks (e.g. IONIC)
● Use Crosswalk (increases app size and affects
performance)
crosswalk-project.org
Bugs in frameworks
App (HTML, CSS, JS)
Hardware
Web View
OS
HTML5 cross-platform framework
Native part of cross-platform framework
App (we can fix bug here)
Hardware (impossible)
API (can’t fix)
Core OS (no chance)
App (we can do a workaround...)
Hardware (impossible)
API (...if bug is here)
Core OS (no chance)
Special case
● new iOS version is about to be
released
● your framework is not ready for it
● your framework has bugs related to
new iOS version
This may block your app
update
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
What to do?
Few options, all are not quite
good
● refine your project requirements
according to framework stable
compatibilities
● postpone the release date
● keep native technology developers at
hand
One more...
Hire experienced developers
Performance
● Longer user interaction response time
(touches etc)
● UI rendering
● PDF rendering
● ...
HTML5 vs. Native
… but nobody cares
these days
you need to reduce your time-to-
market if you are startup
Reverse Engineering
=
=
Cordova/PhoneGap
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
What to do?
Uglify your JavaScript files
One more ;)
Hire experienced developers
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
 Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.
Anton Sakharov
CEO/CTO, MLSDev
sakharov@mlsdev.com

More Related Content

What's hot (20)

PPTX
Ionic Framework - Intro to Hybrid Mobile Application Development
Max Kaplan
 
PPTX
Building Cross Platform Mobile Apps
Shailendra Chauhan
 
PPTX
TypeScript
Software Infrastructure
 
PPTX
Ionic Framework - get up and running to build hybrid mobile apps
Andreas Sahle
 
PDF
Morden F2E Education - Think of Progressive Web Apps
Caesar Chi
 
PDF
React native sharing
Sam Lee
 
PPTX
Mobile Applications with Angular 4 and Ionic 3
Oleksandr Tryshchenko
 
PPTX
Write Better JavaScript
Kevin Whinnery
 
ZIP
Titanium @ Minnebar
Kevin Whinnery
 
PPTX
Lessons Learned From Applications That Kicked Titanium's Ass
Kevin Whinnery
 
PDF
Visual Automation Framework via Screenshot Comparison
Mek Srunyu Stittri
 
PPTX
JavaScript for ASP.NET programmers (webcast) upload
Russ Fustino
 
PPTX
Hybrid vs. Native app - Ionic Framework with AngularJS
Zvika Epstein
 
PDF
codecept.js introduce - front end test E2E tool introduce
Caesar Chi
 
PDF
Cordova, Angularjs & Ionic @ Codeaholics
Eddie Lau
 
PDF
Cross Platform Mobile Apps with the Ionic Framework
Troy Miles
 
PDF
JWC 2015 - Mobile apps development for Joomla!
Extly Extensions - JoomGap
 
PDF
Introduction to React Native
Polidea
 
PDF
Creating mobile apps - an introduction to Ionic (Engage 2016)
Mark Leusink
 
PPTX
React Native for ReactJS Devs
Barak Cohen
 
Ionic Framework - Intro to Hybrid Mobile Application Development
Max Kaplan
 
Building Cross Platform Mobile Apps
Shailendra Chauhan
 
Ionic Framework - get up and running to build hybrid mobile apps
Andreas Sahle
 
Morden F2E Education - Think of Progressive Web Apps
Caesar Chi
 
React native sharing
Sam Lee
 
Mobile Applications with Angular 4 and Ionic 3
Oleksandr Tryshchenko
 
Write Better JavaScript
Kevin Whinnery
 
Titanium @ Minnebar
Kevin Whinnery
 
Lessons Learned From Applications That Kicked Titanium's Ass
Kevin Whinnery
 
Visual Automation Framework via Screenshot Comparison
Mek Srunyu Stittri
 
JavaScript for ASP.NET programmers (webcast) upload
Russ Fustino
 
Hybrid vs. Native app - Ionic Framework with AngularJS
Zvika Epstein
 
codecept.js introduce - front end test E2E tool introduce
Caesar Chi
 
Cordova, Angularjs & Ionic @ Codeaholics
Eddie Lau
 
Cross Platform Mobile Apps with the Ionic Framework
Troy Miles
 
JWC 2015 - Mobile apps development for Joomla!
Extly Extensions - JoomGap
 
Introduction to React Native
Polidea
 
Creating mobile apps - an introduction to Ionic (Engage 2016)
Mark Leusink
 
React Native for ReactJS Devs
Barak Cohen
 

Viewers also liked (20)

PDF
Karol Kalisz, Vitaliy Rudnytskiy: Mobile in IoT Context ? Mobile Applications...
Mobile Trends
 
PDF
#MTC2017: CASE STUDY: #1milionIKO - Michał Pogorzelski
Mobile Trends
 
PDF
Anna Gruszka, Norbert Mazur: Ile tapnięć potrzeba do zamówienia pizzy?
Mobile Trends
 
PPTX
#MTC2017: Trzy perspektywy mobile marketingu - agencja, klient, dostawca - No...
Mobile Trends
 
PDF
#MTC2017: E-wolucja sprzedaży - Rahim Blak
Mobile Trends
 
PDF
#MTC2017: SEO z uwzględnieniem mobile - poznaj najważniejsze różnice - Szymon...
Mobile Trends
 
PDF
Matteo Crippa: ResearchKit: an open source framework by Apple for medical re...
Mobile Trends
 
PDF
#MTC2017: Mobile AdWords i Analytics - Krzysztof Marzec
Mobile Trends
 
PDF
#MTC2017: Kulisy projektów mobilnych. Naga prawda bez lukru i fikcji - Jerzy ...
Mobile Trends
 
PPTX
#MTC2017: CASE STUDY: Komunikat we właściwym czasie, miejscu i... nastroju - ...
Mobile Trends
 
PDF
#MTC2017: Aplikacje "kupujemy" wzrokiem. Dlaczego motion design ratuje UX? - ...
Mobile Trends
 
PDF
#MTC2017: Internet Rzeczy to system, a ja opowiem Ci jak go zaprojektować - K...
Mobile Trends
 
PPTX
#MTC2017: Braterstwo broni - Roman Łoziński
Mobile Trends
 
PDF
#MTC2017: Od U do Z - jaka powinna być Twoja aplikacja na platformie iOS? - M...
Mobile Trends
 
PPTX
Kinetise
Mobile Trends
 
PDF
Krzysztof Ścira: REAL testing of hybrid mobile apps.
Mobile Trends
 
PPTX
Grzegorz Jachowicz: Case study skutecznych i kontekstowo dopasowanych kampani...
Mobile Trends
 
PDF
#MTC2017: Potencjał związany z konwersacyjnym interfejsem użytkownika - Micha...
Mobile Trends
 
DOCX
Cordova vs xamarin vs titanium
Rakesh Jha
 
PDF
Kongres Mobilny: Monika Mikowska, mobee dick
ecommerce poland expo
 
Karol Kalisz, Vitaliy Rudnytskiy: Mobile in IoT Context ? Mobile Applications...
Mobile Trends
 
#MTC2017: CASE STUDY: #1milionIKO - Michał Pogorzelski
Mobile Trends
 
Anna Gruszka, Norbert Mazur: Ile tapnięć potrzeba do zamówienia pizzy?
Mobile Trends
 
#MTC2017: Trzy perspektywy mobile marketingu - agencja, klient, dostawca - No...
Mobile Trends
 
#MTC2017: E-wolucja sprzedaży - Rahim Blak
Mobile Trends
 
#MTC2017: SEO z uwzględnieniem mobile - poznaj najważniejsze różnice - Szymon...
Mobile Trends
 
Matteo Crippa: ResearchKit: an open source framework by Apple for medical re...
Mobile Trends
 
#MTC2017: Mobile AdWords i Analytics - Krzysztof Marzec
Mobile Trends
 
#MTC2017: Kulisy projektów mobilnych. Naga prawda bez lukru i fikcji - Jerzy ...
Mobile Trends
 
#MTC2017: CASE STUDY: Komunikat we właściwym czasie, miejscu i... nastroju - ...
Mobile Trends
 
#MTC2017: Aplikacje "kupujemy" wzrokiem. Dlaczego motion design ratuje UX? - ...
Mobile Trends
 
#MTC2017: Internet Rzeczy to system, a ja opowiem Ci jak go zaprojektować - K...
Mobile Trends
 
#MTC2017: Braterstwo broni - Roman Łoziński
Mobile Trends
 
#MTC2017: Od U do Z - jaka powinna być Twoja aplikacja na platformie iOS? - M...
Mobile Trends
 
Kinetise
Mobile Trends
 
Krzysztof Ścira: REAL testing of hybrid mobile apps.
Mobile Trends
 
Grzegorz Jachowicz: Case study skutecznych i kontekstowo dopasowanych kampani...
Mobile Trends
 
#MTC2017: Potencjał związany z konwersacyjnym interfejsem użytkownika - Micha...
Mobile Trends
 
Cordova vs xamarin vs titanium
Rakesh Jha
 
Kongres Mobilny: Monika Mikowska, mobee dick
ecommerce poland expo
 
Ad

Similar to Anton Sakharov: The risks you take when develop cross-platform apps using HTML5. (20)

PPTX
Cross platform mobile development - you tube videos
Colin Eberhardt
 
PPTX
Top 4 Cross Platform tools for Mobile App Development
techugo
 
PDF
Desarrollo de apps multiplataforma con tecnologías web
Software Guru
 
PDF
Sg conference multiplatform_apps_adam_stanley
n_adam_stanley
 
PPTX
Hybrid mobile application with Ionic
Maulik Bamania
 
ODP
Synapse india reviews on cross plateform mobile apps development
saritasingh19866
 
PDF
Web, Native & Hybrid Apps Overview
Creative Spark, an M&C Saatchi Company
 
PPTX
Hybrid Mobile App
Palani Kumar
 
PPTX
Hybrid mobile app
Palani Kumar
 
PDF
Cross Platform Mobile App Development
Annmarie Lanesey
 
PPTX
Cross platform mobile applications - Touch Tour Chennai
RIA RUI Society
 
PPTX
Mobile Web Apps
Athhar Ahamed
 
PPTX
Phonegap vs Sencha Touch vs Titanium
PixelCrayons
 
PPTX
10 Useful Frameworks to Build Hybrid Mobile Apps
75waytechnologies
 
PPTX
HTML5: The Apps, the Frameworks, the Controversy
Apigee | Google Cloud
 
PDF
Introduction to Phonegap
Andrei Firoiu
 
PDF
[IJCT-V3I2P36] Authors: Amarbir Singh
IJET - International Journal of Engineering and Techniques
 
ODP
Synapse india reviews on mobile application development
saritasingh19866
 
PDF
HTML5 Can't Do That
Nathan Smith
 
ODP
Hybrid application development
Knoldus Inc.
 
Cross platform mobile development - you tube videos
Colin Eberhardt
 
Top 4 Cross Platform tools for Mobile App Development
techugo
 
Desarrollo de apps multiplataforma con tecnologías web
Software Guru
 
Sg conference multiplatform_apps_adam_stanley
n_adam_stanley
 
Hybrid mobile application with Ionic
Maulik Bamania
 
Synapse india reviews on cross plateform mobile apps development
saritasingh19866
 
Web, Native & Hybrid Apps Overview
Creative Spark, an M&C Saatchi Company
 
Hybrid Mobile App
Palani Kumar
 
Hybrid mobile app
Palani Kumar
 
Cross Platform Mobile App Development
Annmarie Lanesey
 
Cross platform mobile applications - Touch Tour Chennai
RIA RUI Society
 
Mobile Web Apps
Athhar Ahamed
 
Phonegap vs Sencha Touch vs Titanium
PixelCrayons
 
10 Useful Frameworks to Build Hybrid Mobile Apps
75waytechnologies
 
HTML5: The Apps, the Frameworks, the Controversy
Apigee | Google Cloud
 
Introduction to Phonegap
Andrei Firoiu
 
[IJCT-V3I2P36] Authors: Amarbir Singh
IJET - International Journal of Engineering and Techniques
 
Synapse india reviews on mobile application development
saritasingh19866
 
HTML5 Can't Do That
Nathan Smith
 
Hybrid application development
Knoldus Inc.
 
Ad

More from Mobile Trends (20)

PDF
#MTC2019: Ludzka twarz bankowości - zastosowanie asystentów głosowych w sekto...
Mobile Trends
 
PPTX
#MTC2019: Dobrze zaprojektowane ubezpieczenie dla rodzin. Case study Link4 ma...
Mobile Trends
 
PDF
#MTC2019: Podróżowanie w prostej taryfie i bez zbędnego bagażu. Case study z ...
Mobile Trends
 
PPTX
#MTC2019: MEMerytura - czyli jak komunikować potrzebę oszczędzania osobom żyj...
Mobile Trends
 
PDF
#MTC2019: Design system - jak pomaga bankom? - Piotr Dziadowicz (EDISONDA)
Mobile Trends
 
PPTX
#MTC2019: Czy bank może zrozumieć e-commerce? - Jadwiga Kijak (Mobee Dick)
Mobile Trends
 
PPTX
#MTC2019: Ewolucja mobilnej bankowości ING - jak podejmować decyzje biznesowe...
Mobile Trends
 
PDF
#MTC2019: Dlaczego młodzi nie skorzystają z Twojej aplikacji? Nie, to nie jes...
Mobile Trends
 
PDF
#MTC2019: Autopay w Banku Millennium - czy aplikacje bankowe staną się wkrótc...
Mobile Trends
 
PDF
#MTC2019: Jasnopisanie w bankowości - rzecz o tym jak być zrozumiałym - Włodz...
Mobile Trends
 
PPTX
#MTC2019: Bank w kieszeni - jak startupy i technologia okradają sektor finans...
Mobile Trends
 
PPTX
#MTC2019: Wyścig zbrojeń PSD2 – krótka historia tego, jak świat walczy o Twoj...
Mobile Trends
 
PDF
#MTC2019: Otwarta bankowość, VAS-y - trendy rynkowe vs oczekiwania klientów -...
Mobile Trends
 
PDF
#MTC2019: Co ma apka do kurczaka - Marek Michalski (Grupa WM)
Mobile Trends
 
PDF
#MTC2019: Jak połączyć wymagania biznesowe i wymagania użytkowników końcowych...
Mobile Trends
 
PDF
#MTC2019: Nie tylko smartfon: nowe przykłady użycia dla Androida - Nadia Ait ...
Mobile Trends
 
PDF
#MTC2019: Voice Commerce - kiedy użytkownicy i ecommerce będą gotowi na głoso...
Mobile Trends
 
PDF
#MTC2019: Dialog z klientem w Erze Asystentów - Michal Dlugosz (Google)
Mobile Trends
 
PDF
#MTC2019: Mobile (jeszcze bardziej) first! PWA jako wyzwanie UX - Filip Makow...
Mobile Trends
 
PDF
#MTC2019: Jak wykorzystać zmianę marki do wytyczenia nowego kierunku w rozwoj...
Mobile Trends
 
#MTC2019: Ludzka twarz bankowości - zastosowanie asystentów głosowych w sekto...
Mobile Trends
 
#MTC2019: Dobrze zaprojektowane ubezpieczenie dla rodzin. Case study Link4 ma...
Mobile Trends
 
#MTC2019: Podróżowanie w prostej taryfie i bez zbędnego bagażu. Case study z ...
Mobile Trends
 
#MTC2019: MEMerytura - czyli jak komunikować potrzebę oszczędzania osobom żyj...
Mobile Trends
 
#MTC2019: Design system - jak pomaga bankom? - Piotr Dziadowicz (EDISONDA)
Mobile Trends
 
#MTC2019: Czy bank może zrozumieć e-commerce? - Jadwiga Kijak (Mobee Dick)
Mobile Trends
 
#MTC2019: Ewolucja mobilnej bankowości ING - jak podejmować decyzje biznesowe...
Mobile Trends
 
#MTC2019: Dlaczego młodzi nie skorzystają z Twojej aplikacji? Nie, to nie jes...
Mobile Trends
 
#MTC2019: Autopay w Banku Millennium - czy aplikacje bankowe staną się wkrótc...
Mobile Trends
 
#MTC2019: Jasnopisanie w bankowości - rzecz o tym jak być zrozumiałym - Włodz...
Mobile Trends
 
#MTC2019: Bank w kieszeni - jak startupy i technologia okradają sektor finans...
Mobile Trends
 
#MTC2019: Wyścig zbrojeń PSD2 – krótka historia tego, jak świat walczy o Twoj...
Mobile Trends
 
#MTC2019: Otwarta bankowość, VAS-y - trendy rynkowe vs oczekiwania klientów -...
Mobile Trends
 
#MTC2019: Co ma apka do kurczaka - Marek Michalski (Grupa WM)
Mobile Trends
 
#MTC2019: Jak połączyć wymagania biznesowe i wymagania użytkowników końcowych...
Mobile Trends
 
#MTC2019: Nie tylko smartfon: nowe przykłady użycia dla Androida - Nadia Ait ...
Mobile Trends
 
#MTC2019: Voice Commerce - kiedy użytkownicy i ecommerce będą gotowi na głoso...
Mobile Trends
 
#MTC2019: Dialog z klientem w Erze Asystentów - Michal Dlugosz (Google)
Mobile Trends
 
#MTC2019: Mobile (jeszcze bardziej) first! PWA jako wyzwanie UX - Filip Makow...
Mobile Trends
 
#MTC2019: Jak wykorzystać zmianę marki do wytyczenia nowego kierunku w rozwoj...
Mobile Trends
 

Recently uploaded (8)

PDF
INTERLINGUAL SYNTACTIC PARSING: AN OPTIMIZED HEAD-DRIVEN PARSING FOR ENGLISH ...
kevig
 
PPT
lect 1 Introduction.ppt11112222333344455
212231
 
PPT
lec2 wireless transmission exlaining.ppt
212231
 
PDF
💡 Digital Marketing Decoded: Mastering Online Growth Strategies for 2025 🚀
marketingaura24
 
PDF
Building Smart, Scalable Solutions with Android App Development
Brancosoft Private Limited
 
PPTX
Mobile Apps Helping Business Grow in 2025
Infylo Techsolutions
 
PPTX
The Intersection of Emoji and NFT. What can be the Consequences?
Refit Global
 
PDF
Call For Papers - International Journal on Natural Language Computing (IJNLC)
kevig
 
INTERLINGUAL SYNTACTIC PARSING: AN OPTIMIZED HEAD-DRIVEN PARSING FOR ENGLISH ...
kevig
 
lect 1 Introduction.ppt11112222333344455
212231
 
lec2 wireless transmission exlaining.ppt
212231
 
💡 Digital Marketing Decoded: Mastering Online Growth Strategies for 2025 🚀
marketingaura24
 
Building Smart, Scalable Solutions with Android App Development
Brancosoft Private Limited
 
Mobile Apps Helping Business Grow in 2025
Infylo Techsolutions
 
The Intersection of Emoji and NFT. What can be the Consequences?
Refit Global
 
Call For Papers - International Journal on Natural Language Computing (IJNLC)
kevig
 

Anton Sakharov: The risks you take when develop cross-platform apps using HTML5.