SlideShare uma empresa Scribd logo
1 de 41
Summerschool Mobiele Apps | 15-17 augustus 2012 | Herman van Dompseler




                                   HTML 5 App
1.   Wat is HTML 5

2.   HTML 5 Apps

3.   Hybride App Architectuur

4.   Een App maken




Overzicht
Deel 1: HTML5
HTML 5 gebruikt als verzamelnaam voor




 HTML 5 markup
 Javascript scripting
 CSS3 vormgeving




HTML 5
<!DOCTYPE HTML>
<html>
<head>
 <title>Hello World</title>
 …




HTML 5 pagina
Maar eerst...

Factoren om te overwegen:
 Welke toepassing ga je maken
 Welke HTML features wil je inzetten
 Voor welk platform maak je je applicatie


De vraag is: wat je wilt, kan dat wel?



Bezint eer ge begint
Het antwoord is: caniuse.com
Case... nieuwe form elementen:

<form>

   <input type=“text”>

   Nieuw: <input type=“date”>
   Of: <input type = “mail”>
   Of: <input type = “search”>

</form>



HTML 5 basics
Case: <input type=“date”>




HTML 5 basics: voorbeeld
Belangrijkste les bij de HTML 5 basics

    Er zijn eigenlijk
     maar 2 platformen
     die voor HTML 5
     basics geschikt
     zijn

    1. Opera voor de
       desktop
    2. iOs voor de iphone
       & ipad


HTML 5 basics: les
Deel 2: HTML5 Apps
Van laptop naar andere devices
Web Site | Web App | Hybride App | Native App
Kenmerken
 Wordt bezocht door er
  naartoe te browsen
 Algemene look & feel van
  website
 Server side rendering
 Online toegankelijk

Zie je het browser frame?




Web Site
Kenmerken
 Kunnen geïnstalleerd
  worden als App
 Uitgebreidere touch GUI
 Client side rendering
 Offline toegankelijk



Geen frame meer!




Web App
Kenmerken
 Directe toegang tot het
  device via raamwerk zoals
  Phonegap.
 HTML 5 kan in de app
  worden opgeslagen, App kan
  in de App Store worden
  opgenomen.


Toegang tot het device!        Phonegap




Hybride App
Kenmerken
 Specifieke code




                         Native code



Hum… geen HTML 5 meer.




Native App
Native
                        code




            Phonegap




HTML5 App
Web site
 Als alle content online is (en moet blijven)

Web App
 Als je een eenvoudige App ervaring wil creëren met
  bestaande content

Hybrid App
 Als je toegang tot specifieke functies van het device
  nodig hebt
OF
 Als je geld wilt verdienen via de App store

Native App
 Als je veel snelheid in je App nodig hebt


Wat kies jij?
Vul het flowchart in
Deel 3: Hybride App
        Architectuur
Native App
ontwikkeling
•   HTML5 code

•   Javascript library

•   Phonegap




Hybride App
Ontwikkeling
Maken het ontwikkelen van de interface
 eenvoudiger voor meerdere devices

 jQueryMobile
 DojoMobile
 Sencha

   jQtouch
   Zepto
   Hammer
   QuoJs


Frontend libraries
Definieren functies die toegang geven tot
 functionaliteiten van het device




 Phonegap
 Appmobi
 Appcelerator

Backend libraries
Werken met Phonegap
HTML 5 oplossing voor audio

Web App
 <audio> tag


Hybride App
 Media object


Met media object ook geluid opnemen


Verschil Web App en Hybride App
•   API
     • Geeft toegang tot
       online content
       aan App

•   Website
     • Geeft toegang
       aan laptop


Connected
Architectuur
Welke resource in de App en welke resource
 online?

   De App moet een snelle response geven
   Niet teveel data genereren online

Resource in App dus, behalve

   Als content niet gedupliceerd hoeft te worden
   Je niet voor content wijzigingen een nieuwe
    App hoeft te maken.


Resources
Deel 4: Een App maken
Download en installeer

   Phonegap.com > getting started guides




Stap 1: Hello world!
Configureer een
 Android Virtual
 Device

 Resolutie
 Density




Stap 2: Run en
test demo App
Juli 2012




Stap 3: Welke Android versie
assets/www

 Documentroot
 index.html




Stap 4: Directory
structuur
XMLmanifest file – Android config file
   android:icon="@drawable/ic_launcher"


Helloworld - main java file
   super.setIntegerProperty("splashscreen", R.drawable.splash);
   super.loadUrl("file:///android_asset/www/index.html", 10000);




Stap 5: Icon en startup scherm
Smartphone
 Width: < 800
 Orientation: portrait
 Dpi: 160

Tablet
 Width: > 800
 Orientation: landscape
 Dpi: 160

High resolution
 Dpi: 240

Stap 6a: Schermtype
/* fixed width layout */
/* standard width */
@media screen and (max-width: 799px) {
   /* portrait layout */
}

/* for layout with great widths */
@media screen and (min-width: 800px) {
   /* landscape layout */
}


Stap 6b: @media queries (CSS)
Belangrijke Phonegap Events

   Deviceready
loadFase1: function() {
         document.addEventListener("deviceready", Cordova.DeviceReady, false);
  },



 Pause/resume
 Online/offline
 Baterycritical/batterylow/batterystatus



Stap 7: Events (backend)
Belangrijke jQueryMobile Events

$('#page').live('tap',function(event) { alert("tap"); });
$('#page').live('taphold',function(event) { alert("hold"); });
$('#page').live('swipeleft',function(event) { alert("swipeleft"); });
$('#page').live('swiperight',function(event) { alert("swiperight"); });




Stap 8: Events (frontend)
Nu kun je zelf aan de slag!

   Uitleg is voorhanden in pdf

   Ik ben vandaag en morgen beschikbaar
    voor vragen




Stap 9: Off you go!
The End

Mais conteúdo relacionado

Semelhante a Html5 App

Apps voor mobiele toestellen
Apps voor mobiele toestellenApps voor mobiele toestellen
Apps voor mobiele toestellenKaren De Groof
 
FEX | RoundTable | 132705 | Workshop: Innoveren met apps? | Presentatie | Mic...
FEX | RoundTable | 132705 | Workshop: Innoveren met apps? | Presentatie | Mic...FEX | RoundTable | 132705 | Workshop: Innoveren met apps? | Presentatie | Mic...
FEX | RoundTable | 132705 | Workshop: Innoveren met apps? | Presentatie | Mic...Flevum
 
Apps in de kantoorpraktijk
Apps in de kantoorpraktijkApps in de kantoorpraktijk
Apps in de kantoorpraktijkVisma | PinkWeb
 
Bouw cross-platform mobiele apps met PhoneGap
Bouw cross-platform mobiele apps met PhoneGapBouw cross-platform mobiele apps met PhoneGap
Bouw cross-platform mobiele apps met PhoneGapDion Olsthoorn
 
There's an app for that
There's an app for thatThere's an app for that
There's an app for thatVRmaster
 
Eduvision - Webinar App of Mobiele site
Eduvision - Webinar App of Mobiele siteEduvision - Webinar App of Mobiele site
Eduvision - Webinar App of Mobiele siteEduvision Opleidingen
 
XPages Introductie
XPages IntroductieXPages Introductie
XPages IntroductieRob Bontekoe
 
De 15 beste gratis apps voor Chrome
De 15 beste gratis apps voor ChromeDe 15 beste gratis apps voor Chrome
De 15 beste gratis apps voor ChromeIDG Nederland
 
Innoveren met apps?, 27/05/2013
Innoveren met apps?, 27/05/2013Innoveren met apps?, 27/05/2013
Innoveren met apps?, 27/05/2013Flevum
 
Verdien geld met je app tips voor het ontwikkelen
Verdien geld met je app tips voor het ontwikkelenVerdien geld met je app tips voor het ontwikkelen
Verdien geld met je app tips voor het ontwikkelenSteven Palmaers
 
5 app alternatieven #AIB2013
5 app alternatieven #AIB20135 app alternatieven #AIB2013
5 app alternatieven #AIB2013Fokke Zandbergen
 
EMS Ehsal - production in a digital world 2013
EMS Ehsal - production in a digital world 2013EMS Ehsal - production in a digital world 2013
EMS Ehsal - production in a digital world 2013Hans Palmers
 
Mobility @ TDC Lighthouse
Mobility @ TDC LighthouseMobility @ TDC Lighthouse
Mobility @ TDC LighthouseTDC Lighthouse
 
App development step by step
App development   step by stepApp development   step by step
App development step by stepPhilippe De Pauw
 
Tablets - zijn 'publicatie' standaarden al zinvol
Tablets - zijn 'publicatie' standaarden al zinvolTablets - zijn 'publicatie' standaarden al zinvol
Tablets - zijn 'publicatie' standaarden al zinvolPeter Luit
 

Semelhante a Html5 App (20)

Apps voor mobiele toestellen
Apps voor mobiele toestellenApps voor mobiele toestellen
Apps voor mobiele toestellen
 
FEX | RoundTable | 132705 | Workshop: Innoveren met apps? | Presentatie | Mic...
FEX | RoundTable | 132705 | Workshop: Innoveren met apps? | Presentatie | Mic...FEX | RoundTable | 132705 | Workshop: Innoveren met apps? | Presentatie | Mic...
FEX | RoundTable | 132705 | Workshop: Innoveren met apps? | Presentatie | Mic...
 
Apps in de kantoorpraktijk
Apps in de kantoorpraktijkApps in de kantoorpraktijk
Apps in de kantoorpraktijk
 
Apps in de kantoorpraktijk
Apps in de kantoorpraktijkApps in de kantoorpraktijk
Apps in de kantoorpraktijk
 
Bouw cross-platform mobiele apps met PhoneGap
Bouw cross-platform mobiele apps met PhoneGapBouw cross-platform mobiele apps met PhoneGap
Bouw cross-platform mobiele apps met PhoneGap
 
HTML 5 in een vogelvlucht (Dutch)
HTML 5 in een vogelvlucht (Dutch)HTML 5 in een vogelvlucht (Dutch)
HTML 5 in een vogelvlucht (Dutch)
 
There's an app for that
There's an app for thatThere's an app for that
There's an app for that
 
Eduvision - Webinar App of Mobiele site
Eduvision - Webinar App of Mobiele siteEduvision - Webinar App of Mobiele site
Eduvision - Webinar App of Mobiele site
 
XPages Introductie
XPages IntroductieXPages Introductie
XPages Introductie
 
De 15 beste gratis apps voor Chrome
De 15 beste gratis apps voor ChromeDe 15 beste gratis apps voor Chrome
De 15 beste gratis apps voor Chrome
 
Innoveren met apps?, 27/05/2013
Innoveren met apps?, 27/05/2013Innoveren met apps?, 27/05/2013
Innoveren met apps?, 27/05/2013
 
Verdien geld met je app tips voor het ontwikkelen
Verdien geld met je app tips voor het ontwikkelenVerdien geld met je app tips voor het ontwikkelen
Verdien geld met je app tips voor het ontwikkelen
 
5 app alternatieven #AIB2013
5 app alternatieven #AIB20135 app alternatieven #AIB2013
5 app alternatieven #AIB2013
 
HTML5 Overview
HTML5 OverviewHTML5 Overview
HTML5 Overview
 
EMS Ehsal - production in a digital world 2013
EMS Ehsal - production in a digital world 2013EMS Ehsal - production in a digital world 2013
EMS Ehsal - production in a digital world 2013
 
HTML5 (Dutch)
HTML5 (Dutch)HTML5 (Dutch)
HTML5 (Dutch)
 
HTML5 fruitmand
HTML5 fruitmandHTML5 fruitmand
HTML5 fruitmand
 
Mobility @ TDC Lighthouse
Mobility @ TDC LighthouseMobility @ TDC Lighthouse
Mobility @ TDC Lighthouse
 
App development step by step
App development   step by stepApp development   step by step
App development step by step
 
Tablets - zijn 'publicatie' standaarden al zinvol
Tablets - zijn 'publicatie' standaarden al zinvolTablets - zijn 'publicatie' standaarden al zinvol
Tablets - zijn 'publicatie' standaarden al zinvol
 

Html5 App

  • 1. Summerschool Mobiele Apps | 15-17 augustus 2012 | Herman van Dompseler HTML 5 App
  • 2. 1. Wat is HTML 5 2. HTML 5 Apps 3. Hybride App Architectuur 4. Een App maken Overzicht
  • 4. HTML 5 gebruikt als verzamelnaam voor  HTML 5 markup  Javascript scripting  CSS3 vormgeving HTML 5
  • 5. <!DOCTYPE HTML> <html> <head> <title>Hello World</title> … HTML 5 pagina
  • 6. Maar eerst... Factoren om te overwegen:  Welke toepassing ga je maken  Welke HTML features wil je inzetten  Voor welk platform maak je je applicatie De vraag is: wat je wilt, kan dat wel? Bezint eer ge begint
  • 7. Het antwoord is: caniuse.com
  • 8. Case... nieuwe form elementen: <form>  <input type=“text”>  Nieuw: <input type=“date”>  Of: <input type = “mail”>  Of: <input type = “search”> </form> HTML 5 basics
  • 10. Belangrijkste les bij de HTML 5 basics  Er zijn eigenlijk maar 2 platformen die voor HTML 5 basics geschikt zijn 1. Opera voor de desktop 2. iOs voor de iphone & ipad HTML 5 basics: les
  • 12. Van laptop naar andere devices
  • 13. Web Site | Web App | Hybride App | Native App
  • 14. Kenmerken  Wordt bezocht door er naartoe te browsen  Algemene look & feel van website  Server side rendering  Online toegankelijk Zie je het browser frame? Web Site
  • 15. Kenmerken  Kunnen geïnstalleerd worden als App  Uitgebreidere touch GUI  Client side rendering  Offline toegankelijk Geen frame meer! Web App
  • 16. Kenmerken  Directe toegang tot het device via raamwerk zoals Phonegap.  HTML 5 kan in de app worden opgeslagen, App kan in de App Store worden opgenomen. Toegang tot het device! Phonegap Hybride App
  • 17. Kenmerken  Specifieke code Native code Hum… geen HTML 5 meer. Native App
  • 18. Native code Phonegap HTML5 App
  • 19. Web site  Als alle content online is (en moet blijven) Web App  Als je een eenvoudige App ervaring wil creëren met bestaande content Hybrid App  Als je toegang tot specifieke functies van het device nodig hebt OF  Als je geld wilt verdienen via de App store Native App  Als je veel snelheid in je App nodig hebt Wat kies jij?
  • 21. Deel 3: Hybride App Architectuur
  • 23. HTML5 code • Javascript library • Phonegap Hybride App Ontwikkeling
  • 24. Maken het ontwikkelen van de interface eenvoudiger voor meerdere devices  jQueryMobile  DojoMobile  Sencha  jQtouch  Zepto  Hammer  QuoJs Frontend libraries
  • 25. Definieren functies die toegang geven tot functionaliteiten van het device  Phonegap  Appmobi  Appcelerator Backend libraries
  • 27. HTML 5 oplossing voor audio Web App  <audio> tag Hybride App  Media object Met media object ook geluid opnemen Verschil Web App en Hybride App
  • 28. API • Geeft toegang tot online content aan App • Website • Geeft toegang aan laptop Connected Architectuur
  • 29. Welke resource in de App en welke resource online?  De App moet een snelle response geven  Niet teveel data genereren online Resource in App dus, behalve  Als content niet gedupliceerd hoeft te worden  Je niet voor content wijzigingen een nieuwe App hoeft te maken. Resources
  • 30. Deel 4: Een App maken
  • 31. Download en installeer  Phonegap.com > getting started guides Stap 1: Hello world!
  • 32. Configureer een Android Virtual Device  Resolutie  Density Stap 2: Run en test demo App
  • 33. Juli 2012 Stap 3: Welke Android versie
  • 35. XMLmanifest file – Android config file android:icon="@drawable/ic_launcher" Helloworld - main java file super.setIntegerProperty("splashscreen", R.drawable.splash); super.loadUrl("file:///android_asset/www/index.html", 10000); Stap 5: Icon en startup scherm
  • 36. Smartphone  Width: < 800  Orientation: portrait  Dpi: 160 Tablet  Width: > 800  Orientation: landscape  Dpi: 160 High resolution  Dpi: 240 Stap 6a: Schermtype
  • 37. /* fixed width layout */ /* standard width */ @media screen and (max-width: 799px) { /* portrait layout */ } /* for layout with great widths */ @media screen and (min-width: 800px) { /* landscape layout */ } Stap 6b: @media queries (CSS)
  • 38. Belangrijke Phonegap Events  Deviceready loadFase1: function() { document.addEventListener("deviceready", Cordova.DeviceReady, false); },  Pause/resume  Online/offline  Baterycritical/batterylow/batterystatus Stap 7: Events (backend)
  • 39. Belangrijke jQueryMobile Events $('#page').live('tap',function(event) { alert("tap"); }); $('#page').live('taphold',function(event) { alert("hold"); }); $('#page').live('swipeleft',function(event) { alert("swipeleft"); }); $('#page').live('swiperight',function(event) { alert("swiperight"); }); Stap 8: Events (frontend)
  • 40. Nu kun je zelf aan de slag!  Uitleg is voorhanden in pdf  Ik ben vandaag en morgen beschikbaar voor vragen Stap 9: Off you go!