+ All Categories
Home > Technology > Webview: The fifth element

Webview: The fifth element

Date post: 17-May-2015
Category:
Upload: fernando-cejas
View: 245 times
Download: 1 times
Share this document with a friend
Description:
Talk about different experiences related with mobile web and the android webview. Native vs Hybrid. Drawbacks and benefits of native and hybrid applications
Popular Tags:
25
@fernando_cejas WEBVIEW: The Fifth Element
Transcript
Page 1: Webview: The fifth element

@fernando_cejas

WEBVIEW: The Fifth Element

Page 2: Webview: The fifth element

Who am I?

•  GDG Organizer •  Android, Agile and

technology Geek •  NFC Actions App •  Mobile Developer

@fernando_cejas

http://www.fernandocejas.com/

Page 3: Webview: The fifth element

Agenda

•  Native vs web •  Web developers •  Native developers •  Benefits and drawbacks •  The webview •  Experiences •  Advices  

Page 4: Webview: The fifth element

What the hell…? …I am a native developer

Page 5: Webview: The fifth element

Why the title? What were you thinking about?

Page 6: Webview: The fifth element

Actually…

•  Activities •  Intents •  Services •  Widgets •  ...and Webview!!!

Page 7: Webview: The fifth element

Native vs web???

Page 8: Webview: The fifth element

Web developers? Designers?

Page 9: Webview: The fifth element

Native developers…????

Page 10: Webview: The fifth element

Benefits of native development

•  Default OS look & feel (UI conventions) •  Performance •  Access to device hardware (GPS, etc) •  App store/marketplace distribution •  Benefit from latest OS enhancements

Page 11: Webview: The fifth element

Drawbacks of native development

•  Tied to the particular OS you built for •  Maintaining a multi OS team/skill-set •  Dealing with the app store approval

process •  Keeping app in sync with OS updates

Page 12: Webview: The fifth element

Benefits of hybrid development

•  Common codebase for multiple OS's •  Access to device hardware (GPS, etc) •  App store/marketplace distribution •  Skills you already have (HTML, CSS, JS) •  Potential code reuse in web site/app

Page 13: Webview: The fifth element

Drawbacks of hybrid development

•  Build for lowest common denominator •  3rd party SDK's might lag behind OS –  Want to use feature X? Wait for an

implementation in abstraction layer

•  An abstraction layer can have bugs of its own. Have to determine if a bug is in your code, the abstraction layer, or OS.

Page 14: Webview: The fifth element

So, what should I build?

• Desktop web app • Mobile web app • Mobile native app

Page 15: Webview: The fifth element

We can live together…

Page 16: Webview: The fifth element

Webview and the mobile web…

• Webviews and Mobile web are almost the same…

Page 17: Webview: The fifth element

Webview and the mobile web…

• 2 small differences: – Mobile web authenticates with

web session – Webview sets up protocols links

Page 18: Webview: The fifth element
Page 19: Webview: The fifth element
Page 20: Webview: The fifth element

Webview and the mobile web…

• 1 big difference: – Through webviews we can

access native capabilities

Page 21: Webview: The fifth element
Page 22: Webview: The fifth element

Pitfalls…experiences?

•  Android webview has a lot of bugs •  Too heavy widget (poor performance?) •  Differente capabilities depending on the OS

version. •  Cordova webview implementation (not a silver

bullet)

Page 23: Webview: The fifth element

Some advice…and conclusions…

•  Minimize number of connections •  Do not assume JS has loaded •  Minimize page weight •  Testing in your desktop is not enough •  Do not resize images on the client •  Have a version of the web that works

everywhere •  The most important: know your users •  Test on real devices

Page 24: Webview: The fifth element

Any questions?

Page 25: Webview: The fifth element

Thanks!

When you look at the dark side, careful you must be ... for the dark side looks back.

@fernando_cejas www.fernandocejas.com


Recommended