"WebView, the fifth element" por @fernando_cejas

533 views
431 views

Published on

Presentación realizada en el #webcat Barcelona de Septiembre 2013

Autor: Fernando Cejas (@fernando_cejas)

Published in: Technology, Design
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
533
On SlideShare
0
From Embeds
0
Number of Embeds
13
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

"WebView, the fifth element" por @fernando_cejas

  1. 1. WEBVIEW: The Fifth Element @fernando_cejas
  2. 2. Who am I? •  GDG Organizer •  Android, Agile and technology Geek •  NFC Actions App •  Mobile Developer @fernando_cejas http://www.fernandocejas.com/
  3. 3. Agenda •  Native vs web •  Web developers •  Native developers •  Benefits and drawbacks •  The webview •  Experiences •  Advices  
  4. 4. What the hell…? …I am a native developer
  5. 5. Why the title? What were you thinking about?
  6. 6. Actually… •  Activities •  Intents •  Services •  Widgets •  ...and Webview!!!
  7. 7. Native vs web???
  8. 8. Web developers? Designers?
  9. 9. Native developers…????
  10. 10. 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
  11. 11. 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
  12. 12. 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
  13. 13. 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.
  14. 14. So, what should I build? •  Desktop web app •  Mobile web app •  Mobile native app
  15. 15. We can live together…
  16. 16. Webview and the mobile web… •  Webviews and Mobile web are almost the same…
  17. 17. Webview and the mobile web… •  2 small differences: – Mobile web authenticates with web session – Webview sets up protocols links
  18. 18. Webview and the mobile web… •  1 big difference: – Through webviews we can access native capabilities
  19. 19. 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)
  20. 20. 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 •  •  •  •  •  • 
  21. 21. Any questions?
  22. 22. Thanks! When you look at the dark side, careful you must be ... for the dark side looks back. @fernando_cejas www.fernandocejas.com

×