Mobile HTML5 am Beispiel von Games

G
We tell mixed-reality stories.




                        IAETH Talk

           Montag, 16. Januar 2012
                      Matthias Sala
             matthias@gbanga.com
ETH Informatik Abschluss 2006

Major:          Distributed Systems

Minor:          Architektur/Höngg

Masterarbeit: Ubiquituous Computing

Praktika:       Siemens Smart Home, München
                SMARAPD, Ribeirão Preto (IAESTE)

«Location-based Werbung» am Xerox PARC, Palo
Alto, USA
@babalunda, matthias@gbanga.com, http://matthias.sala.ch
                                                           2
GBANGA, INTERAKTIVE GESCHICHTEN




                                  3
«Ich habe viele Games
                                                      gespielt, aber hätte nie
                                                      gedacht, dass ich wegen
                                                      einem Spiel bei starkem
                                                      Regen draussen
                                                      herumlaufe»
                                                            - 29-jähriger Gbanga-Spieler
                                                                                     4
http://www.flickr.com/photos/jimclifford/1501362906
Ziel: Motivationssteigerung des Zielpublikums
Anwendung spieltypischer Elemente auf
spielfremde Systeme
• Erfahrungspunkte / Levels
• Highscores / Rangliste
• Missionen / Quest
• Trophäen / Badges
• Social Sharing
                                                5
6
• Produkt durch ein Spiel bewerben

• Spielerisch Laufkundschaft generieren

• Mit dem Produkt interagieren

• Einfluss am POS nehmen

• Integration in Social Media
  (den Erfolg mit anderen teilen)

• Markenführung


                                          7
8
9
Mobile Trends:                               Gamification:
     Location-Based, Augmented                          Flashmobs,
     Reality, In-App Purchases                        Urban gaming


                                                   Story Telling:
                                                        Video Spiele
     Real World Faktoren:                                  überholen
     Ort, Wetter, Zeit                                    Hollywood


                                   Integration verschiedenster
                                                 Technologien:
                                           Google Maps, Facebook,
                                               Twitter, Notifications

                                                                  10
http://www.alnatura.de/de/muesli
ca. 150m


                                                        Aktuelles
                             Puzzle-
                                                         Wetter
                            Teile von
                             Quests



Unternehmen                         Telefonzellen
                 Wert-                              Gesponserte
   in der                             für neue
              gegenstände                           Geschenke
 Umgebung                            Missionen
                                                               11
Gbanga deckt den gesamten Produktionsprozess von der
Konzeption über die Ausführung, Test und Betrieb bis zur
Analyse ab:




    1-2         1          1-12      Dauer der
                                                 Real Time
  Stunden     Woche       Wochen     Kampagne



                                                             12
Shortlist




                                         Swiss Venture
                                           Leaders


• Vision seit 2007; operativ seit 2009

• Zahlreiche nationale und internationale Nominierungen
  und Auszeichnungen

• Vollständig «bootstrapped»

• Interdisziplinäres, internationales Team mit Erfahrung:
  ETH Zürich, Sony Entertainment, Xerox
  PARC, Zurich, McDonald‘s                                  13
DAS GBANGA-SYSTEM




                    14
• iPhone, iPad, Bada, Internet-Seiten
• GPS, Beschleunigungssensoren
• Integration in Social Media: Facebook
• Server-Hosting in der Cloud
• Community Management & Support
• Tools: Quest Developer
  Kit, Newsletter, KPI, geografische Statistik

                                                 15
Accu              Google      ...
OSM         Weather            places



       Mapnik                            Tiles                                    Clients
                             Server                          HTTP / JSON
       Websites




                                                                             Desktop Browser
LAMP


        PHP




                                                                               (HTML, JS, AJAX)


                                                                             Mobile Browser
                                                                               (HTML, JS, AJAX)

                                  Session Handler
                                                            :8080
                                                                                  iPhone
                  Servlets
         OSGi
Java




                                  Session Handler           :1090
                                                                                (C/Objective C)


                                                                                   J2ME
                                         Valida-                                    (Java)
                                 OR       tion
                                                    ...


                                                                                   Bada
                                 Lua      Lua       Lua         TCP/IP /          (C/«C++»)
        Lua                     Script   Script    Script
                                                              ObjectStream
                                                                                                  16
VORTEILE VON HTML5




                     17
Mobile HTML5 am Beispiel von Games
• Homogenisierte Entwicklung auf
  Endgeräten
  – iPhone, Android, Desktop, Facebook app, ...

• Keine AppStore Approvals
  – Option für native App bleibt offen

• Homogenität zwischen Client und Server
  – Überall die selbe Programmiersprache
                                                  19
Accu              Google      ...
OSM         Weather            places



       Mapnik                            Tiles                                    Clients
                             Server                          HTTP / JSON
       Websites




                                                                             Desktop Browser
LAMP


        PHP




                                                                               (HTML, JS, AJAX)


                                                                             Mobile Browser
                                                                               (HTML, JS, AJAX)

                                  Session Handler
                                                            :8080
                                                                                  iPhone
                  Servlets
         OSGi
Java




                                  Session Handler           :1090
                                                                                 (C/Objective C)
                                                                              (PhoneGap & HTML5)


                                                                                  Android
                                                                                   J2ME
                                         Valida-                              (PhoneGap & HTML5)
                                                                                    (Java)
                                 OR       tion
                                                    ...


                                                                                BlackBerry
                                                                                   Bada
                                 Lua      Lua       Lua         TCP/IP /      (PhoneGap & HTML5)
                                                                                   (C/«C++»)
        Lua                     Script   Script    Script
                                                              ObjectStream
                                                                                             20
• Bisheriges HTML: JavaScript, CSS,
  DOM...
• Extensions:
  – Touch events         – WebSockets

  – GPS, Accelerometer   – Offline

  – Canvas und SVG       – ...


                                        21
FreeBeerNear.me, OpenAppMkt.com, Orbium
(jsway.se), kingdomgame.net, app.ft.com




More on: http://web.appstorm.net/roundups/30-incredibly-useful-fun-html5-mobile-apps/ 22
• Pilotifant für iPad   • Meinzuerich2011.ch
  Interstitial




                                               23
24
http://pinchzoom.com/posts/anatomy-of-a-html5-mobile-app/anatomy-of-a-html5-mobile-app
• Container: PhoneGap

      • Inhalt: HTML5
             – DOM-Objekte

             – JavaScript

             – WebSockets

             – CSS3


                                                              25
http://wiki.phonegap.com/w/page/36752779/PhoneGap%20Plugins
• Benutzerschnittstellen-Baukasten

• Geräte-Unabhängigkeit
• Javascript-Helfer-Methoden

• Animationen




                                     26
• jQTouch
  ‒ jQuery plugin für Android und iPhone
• jQuery Mobile
  + gute Kombination mit bekanntem jquery
  ‒ mehr Handarbeit
• Sencha touch
  + konsistent auf vielen Plattformen
  ‒ eigenartige Zwischensprache
  ‒ wenig Kontrolle auf untere Layers
  ‒ geht nicht auf Desktop Firefox und IE
• M-Project, Jo, xui.js, EmbedJS, ...
                                            27
VORTEILE VON HTML5




                     28
Accu              Google      ...
OSM         Weather            places



       Mapnik                            Tiles                                    Clients
                             Server                          HTTP / JSON
       Websites




                                                                             Desktop Browser
LAMP


        PHP




                                                                               (HTML, JS, AJAX)


                                                                             Mobile Browser
                                                                               (HTML, JS, AJAX)

                                  Session Handler
                                                            :8080
                                                                                  iPhone
                  Servlets
         OSGi
Java




                                  Session Handler           :1090
                                                                                 (C/Objective C)
                                                                              (PhoneGap & HTML5)


                                                                                  Android
                                                                                   J2ME
                                         Valida-                              (PhoneGap & HTML5)
                                                                                    (Java)
                                 OR       tion
                                                    ...


                                                                                BlackBerry
                                                                                   Bada
                                 Lua      Lua       Lua         TCP/IP /      (PhoneGap & HTML5)
                                                                                   (C/«C++»)
        Lua                     Script   Script    Script
                                                              ObjectStream
                                                                                             29
Accu              Google        ...
OSM         Weather            places



       Mapnik                              Tiles                                  Clients
                             Server                            HTTP / JSON
       Websites




                                                                             Desktop Browser
LAMP


        PHP




                                                                               (HTML, JS, AJAX)


                                                                             Mobile Browser
                                                                               (HTML, JS, AJAX)

                                  Session Handler
                                                              :8080
                                        Session Handler
                                                                                  iPhone
                  Servlets
         OSGi
Java




                                                                              (PhoneGap & HTML5)
          Erlang
                                                                                  Android
                                           Valida-                            (PhoneGap & HTML5)
                                 OR         tion
                                                      ...


                                                                                BlackBerry
                                 Lua        Lua       Lua                     (PhoneGap & HTML5)
        Lua                     Script     Script    Script
                                                                                             30
Accu              Google                     ...
OSM         Weather            places



       Mapnik                                           Tiles                                   Clients
                             Server                                          HTTP / JSON
       Websites




                                                                                           Desktop Browser
LAMP


        PHP




                                                                                             (HTML, JS, AJAX)


                                                                                           Mobile Browser
                                                                                             (HTML, JS, AJAX)


                                                                            :8080
                                        Session Handler
                                                                                                iPhone
                  Servlets
         OSGi




                                                                                            (PhoneGap & HTML5)
          Erlang
          Erlang                                             JS      JS                         Android
                                        Javascript VM




                                                          Script
                                                        Valida-    Script                   (PhoneGap & HTML5)
                                 OR                      tion
                                                                    ...


                                                            JS     JS
                                                                                              BlackBerry
                                 Lua                     Lua      Lua                       (PhoneGap & HTML5)
        Lua                     Script                    Script Script
                                                        Script    Script
                                                                                                           31
Erlang: 1 Mio TCP-Verbindungen pro
Server-Maschine (siehe WhatsApp Blog)
JavaScript:

• homogener Code für Client und Server
• Code-Injektionen


                                         32
NACHTILE VON HTML5




                     33
Browser War: Fragmentierung pro Handy-
Plattform x Firmware x Browser-App
Geschwindigkeit: bei Reaktionsfreudigkeit in
Benutzerschnittstellen ein Problem
Hardware-Beschleunigung fehlt (soll aber
kommen):
• mobile Animationen sind nur mit animierten
  GIF und Sprites/CSS-Position schnell
• Canvas auf dem Handy ist ungefähr ~5 FPS     34
We tell mixed-reality stories.




                        IAETH Talk

           Montag, 16. Januar 2012
                      Matthias Sala
             matthias@gbanga.com
1 of 35

Recommended

Institucionalidad politica sexto básico by
Institucionalidad politica sexto básicoInstitucionalidad politica sexto básico
Institucionalidad politica sexto básicoSan Sebastián University
405 views26 slides
To Trust or not to Trust, telle est la question. Et si nous renversions quelq... by
To Trust or not to Trust, telle est la question. Et si nous renversions quelq...To Trust or not to Trust, telle est la question. Et si nous renversions quelq...
To Trust or not to Trust, telle est la question. Et si nous renversions quelq...University of Geneva
494 views31 slides
Manon De P. La vertu by
Manon De P. La vertuManon De P. La vertu
Manon De P. La vertuTerminales
727 views10 slides
Philippe S. Aristote by
Philippe S. AristotePhilippe S. Aristote
Philippe S. AristoteTerminales
614 views6 slides
Lenguajes De Progaramacion by
Lenguajes De ProgaramacionLenguajes De Progaramacion
Lenguajes De Progaramacionmayra alejandra
149 views3 slides
Florence M. Aristote by
Florence M. AristoteFlorence M. Aristote
Florence M. AristoteTerminales
797 views11 slides

More Related Content

Viewers also liked

Opportunité Palmary: gangez de l'argent en voyageant by
Opportunité Palmary: gangez de l'argent en voyageantOpportunité Palmary: gangez de l'argent en voyageant
Opportunité Palmary: gangez de l'argent en voyageantPalmary travel
1K views25 slides
Sumativa 1 by
Sumativa 1Sumativa 1
Sumativa 1San Sebastián University
129 views7 slides
Praesentation Online Befragung 2007 Steuerungsgremium Maerz 2007 by
Praesentation Online Befragung 2007 Steuerungsgremium Maerz 2007Praesentation Online Befragung 2007 Steuerungsgremium Maerz 2007
Praesentation Online Befragung 2007 Steuerungsgremium Maerz 2007wolfplum
468 views36 slides
Le volcan by
Le volcanLe volcan
Le volcantrivie0057
716 views7 slides
2 unidad 1 prueba historia sexto a by
2 unidad 1 prueba historia sexto a2 unidad 1 prueba historia sexto a
2 unidad 1 prueba historia sexto aSan Sebastián University
91 views3 slides
Smart total by
Smart totalSmart total
Smart totalCristhian
302 views5 slides

Viewers also liked(19)

Opportunité Palmary: gangez de l'argent en voyageant by Palmary travel
Opportunité Palmary: gangez de l'argent en voyageantOpportunité Palmary: gangez de l'argent en voyageant
Opportunité Palmary: gangez de l'argent en voyageant
Palmary travel1K views
Praesentation Online Befragung 2007 Steuerungsgremium Maerz 2007 by wolfplum
Praesentation Online Befragung 2007 Steuerungsgremium Maerz 2007Praesentation Online Befragung 2007 Steuerungsgremium Maerz 2007
Praesentation Online Befragung 2007 Steuerungsgremium Maerz 2007
wolfplum468 views
Smart total by Cristhian
Smart totalSmart total
Smart total
Cristhian302 views
Les sentiment by lidiamarta
Les sentimentLes sentiment
Les sentiment
lidiamarta236 views
Autrans2010 Community Manager by sentsy
Autrans2010 Community ManagerAutrans2010 Community Manager
Autrans2010 Community Manager
sentsy510 views
Présentation réseaux sociaux SCY mai 2012 ap-guignard by Anne-Pierre Guignard
Présentation réseaux sociaux SCY mai 2012   ap-guignardPrésentation réseaux sociaux SCY mai 2012   ap-guignard
Présentation réseaux sociaux SCY mai 2012 ap-guignard
Bourges by isa18500
BourgesBourges
Bourges
isa18500306 views
Carnet de bord by azzar9
Carnet de bordCarnet de bord
Carnet de bord
azzar9296 views
Jeu de piste fiche réponses by idejol
Jeu de piste fiche réponsesJeu de piste fiche réponses
Jeu de piste fiche réponses
idejol500 views
Présentation - Candidature des climats du vignoble de Bourgogne pour l'inscr... by VINCENTLAINE
Présentation - Candidature des climats du vignoble de  Bourgogne pour l'inscr...Présentation - Candidature des climats du vignoble de  Bourgogne pour l'inscr...
Présentation - Candidature des climats du vignoble de Bourgogne pour l'inscr...
VINCENTLAINE1.2K views
Notre ville: Torrelavega by piedadpcobo
Notre ville: TorrelavegaNotre ville: Torrelavega
Notre ville: Torrelavega
piedadpcobo278 views
Las TIC en el plano asistencial by Olga Navarro
Las TIC en el plano asistencialLas TIC en el plano asistencial
Las TIC en el plano asistencial
Olga Navarro305 views

Similar to Mobile HTML5 am Beispiel von Games

Mobile Marketing für KMU‘s: Das Momentum des Kaufsentscheids beeinflussen by
Mobile Marketing für KMU‘s: Das Momentum des Kaufsentscheids beeinflussenMobile Marketing für KMU‘s: Das Momentum des Kaufsentscheids beeinflussen
Mobile Marketing für KMU‘s: Das Momentum des Kaufsentscheids beeinflussengbanga
864 views21 slides
Erstellung von mobilen cross-platform-Apps by
Erstellung von mobilen cross-platform-AppsErstellung von mobilen cross-platform-Apps
Erstellung von mobilen cross-platform-AppsRalf Lütke
5.9K views18 slides
MT AG Möglichkeiten mit PhoneGap in verbindung mit APEX 4.2. by
MT AG Möglichkeiten mit PhoneGap in verbindung mit APEX 4.2.MT AG Möglichkeiten mit PhoneGap in verbindung mit APEX 4.2.
MT AG Möglichkeiten mit PhoneGap in verbindung mit APEX 4.2.Niels de Bruijn
942 views13 slides
Mobile Applikationen: Entwicklung, Rollout, Wartung - Tipps und Tricks für di... by
Mobile Applikationen: Entwicklung, Rollout, Wartung - Tipps und Tricks für di...Mobile Applikationen: Entwicklung, Rollout, Wartung - Tipps und Tricks für di...
Mobile Applikationen: Entwicklung, Rollout, Wartung - Tipps und Tricks für di...IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
1.7K views41 slides
SharePoint, HTML5 und mobile Geräte (SharePoint UserGroup Dresden 11/2011) by
SharePoint, HTML5 und mobile Geräte (SharePoint UserGroup Dresden 11/2011)SharePoint, HTML5 und mobile Geräte (SharePoint UserGroup Dresden 11/2011)
SharePoint, HTML5 und mobile Geräte (SharePoint UserGroup Dresden 11/2011)Christian Heindel
1.7K views38 slides
Android Apps mit Xamarin entwickeln by
Android Apps mit Xamarin entwickelnAndroid Apps mit Xamarin entwickeln
Android Apps mit Xamarin entwickelnAndré Krämer
406 views64 slides

Similar to Mobile HTML5 am Beispiel von Games(20)

Mobile Marketing für KMU‘s: Das Momentum des Kaufsentscheids beeinflussen by gbanga
Mobile Marketing für KMU‘s: Das Momentum des Kaufsentscheids beeinflussenMobile Marketing für KMU‘s: Das Momentum des Kaufsentscheids beeinflussen
Mobile Marketing für KMU‘s: Das Momentum des Kaufsentscheids beeinflussen
gbanga864 views
Erstellung von mobilen cross-platform-Apps by Ralf Lütke
Erstellung von mobilen cross-platform-AppsErstellung von mobilen cross-platform-Apps
Erstellung von mobilen cross-platform-Apps
Ralf Lütke5.9K views
MT AG Möglichkeiten mit PhoneGap in verbindung mit APEX 4.2. by Niels de Bruijn
MT AG Möglichkeiten mit PhoneGap in verbindung mit APEX 4.2.MT AG Möglichkeiten mit PhoneGap in verbindung mit APEX 4.2.
MT AG Möglichkeiten mit PhoneGap in verbindung mit APEX 4.2.
Niels de Bruijn942 views
SharePoint, HTML5 und mobile Geräte (SharePoint UserGroup Dresden 11/2011) by Christian Heindel
SharePoint, HTML5 und mobile Geräte (SharePoint UserGroup Dresden 11/2011)SharePoint, HTML5 und mobile Geräte (SharePoint UserGroup Dresden 11/2011)
SharePoint, HTML5 und mobile Geräte (SharePoint UserGroup Dresden 11/2011)
Christian Heindel1.7K views
Android Apps mit Xamarin entwickeln by André Krämer
Android Apps mit Xamarin entwickelnAndroid Apps mit Xamarin entwickeln
Android Apps mit Xamarin entwickeln
André Krämer406 views
Sencha Touch & PhoneGap by Stefan Kolb
Sencha Touch & PhoneGapSencha Touch & PhoneGap
Sencha Touch & PhoneGap
Stefan Kolb1.6K views
Android Entwicklung GTUG München 2009 by greenrobot
Android Entwicklung GTUG München 2009Android Entwicklung GTUG München 2009
Android Entwicklung GTUG München 2009
greenrobot1.3K views
Sencha Touch und PhoneGap by Indiginox
Sencha Touch und PhoneGapSencha Touch und PhoneGap
Sencha Touch und PhoneGap
Indiginox1.7K views
Top 10 Internet Trends 2008 by Jürg Stuker
Top 10 Internet Trends 2008Top 10 Internet Trends 2008
Top 10 Internet Trends 2008
Jürg Stuker1.8K views
AR Webinar by argency
AR WebinarAR Webinar
AR Webinar
argency306 views
ESE Conference: iOS, Android, WP7... Alle nativ auf einen Streich! streich by Romano Roth
ESE Conference: iOS, Android, WP7...Alle nativ auf einen Streich! streichESE Conference: iOS, Android, WP7...Alle nativ auf einen Streich! streich
ESE Conference: iOS, Android, WP7... Alle nativ auf einen Streich! streich
Romano Roth719 views
Mit jQTouch auf's iPhone & Android by Björn Wibben
Mit jQTouch auf's iPhone & AndroidMit jQTouch auf's iPhone & Android
Mit jQTouch auf's iPhone & Android
Björn Wibben972 views
Die Zukunft der Webstandards - Webinale 31.05.2010 by Patrick Lauke
Die Zukunft der Webstandards - Webinale 31.05.2010Die Zukunft der Webstandards - Webinale 31.05.2010
Die Zukunft der Webstandards - Webinale 31.05.2010
Patrick Lauke1.2K views
Einstieg in Xamarin und Xamarin.Forms, DDC 2018 by André Krämer
Einstieg in Xamarin und Xamarin.Forms, DDC 2018Einstieg in Xamarin und Xamarin.Forms, DDC 2018
Einstieg in Xamarin und Xamarin.Forms, DDC 2018
André Krämer232 views

Mobile HTML5 am Beispiel von Games

  • 1. We tell mixed-reality stories. IAETH Talk Montag, 16. Januar 2012 Matthias Sala matthias@gbanga.com
  • 2. ETH Informatik Abschluss 2006 Major: Distributed Systems Minor: Architektur/Höngg Masterarbeit: Ubiquituous Computing Praktika: Siemens Smart Home, München SMARAPD, Ribeirão Preto (IAESTE) «Location-based Werbung» am Xerox PARC, Palo Alto, USA @babalunda, matthias@gbanga.com, http://matthias.sala.ch 2
  • 4. «Ich habe viele Games gespielt, aber hätte nie gedacht, dass ich wegen einem Spiel bei starkem Regen draussen herumlaufe» - 29-jähriger Gbanga-Spieler 4 http://www.flickr.com/photos/jimclifford/1501362906
  • 5. Ziel: Motivationssteigerung des Zielpublikums Anwendung spieltypischer Elemente auf spielfremde Systeme • Erfahrungspunkte / Levels • Highscores / Rangliste • Missionen / Quest • Trophäen / Badges • Social Sharing 5
  • 6. 6
  • 7. • Produkt durch ein Spiel bewerben • Spielerisch Laufkundschaft generieren • Mit dem Produkt interagieren • Einfluss am POS nehmen • Integration in Social Media (den Erfolg mit anderen teilen) • Markenführung 7
  • 8. 8
  • 9. 9
  • 10. Mobile Trends: Gamification: Location-Based, Augmented Flashmobs, Reality, In-App Purchases Urban gaming Story Telling: Video Spiele Real World Faktoren: überholen Ort, Wetter, Zeit Hollywood Integration verschiedenster Technologien: Google Maps, Facebook, Twitter, Notifications 10 http://www.alnatura.de/de/muesli
  • 11. ca. 150m Aktuelles Puzzle- Wetter Teile von Quests Unternehmen Telefonzellen Wert- Gesponserte in der für neue gegenstände Geschenke Umgebung Missionen 11
  • 12. Gbanga deckt den gesamten Produktionsprozess von der Konzeption über die Ausführung, Test und Betrieb bis zur Analyse ab: 1-2 1 1-12 Dauer der Real Time Stunden Woche Wochen Kampagne 12
  • 13. Shortlist Swiss Venture Leaders • Vision seit 2007; operativ seit 2009 • Zahlreiche nationale und internationale Nominierungen und Auszeichnungen • Vollständig «bootstrapped» • Interdisziplinäres, internationales Team mit Erfahrung: ETH Zürich, Sony Entertainment, Xerox PARC, Zurich, McDonald‘s 13
  • 15. • iPhone, iPad, Bada, Internet-Seiten • GPS, Beschleunigungssensoren • Integration in Social Media: Facebook • Server-Hosting in der Cloud • Community Management & Support • Tools: Quest Developer Kit, Newsletter, KPI, geografische Statistik 15
  • 16. Accu Google ... OSM Weather places Mapnik Tiles Clients Server HTTP / JSON Websites Desktop Browser LAMP PHP (HTML, JS, AJAX) Mobile Browser (HTML, JS, AJAX) Session Handler :8080 iPhone Servlets OSGi Java Session Handler :1090 (C/Objective C) J2ME Valida- (Java) OR tion ... Bada Lua Lua Lua TCP/IP / (C/«C++») Lua Script Script Script ObjectStream 16
  • 19. • Homogenisierte Entwicklung auf Endgeräten – iPhone, Android, Desktop, Facebook app, ... • Keine AppStore Approvals – Option für native App bleibt offen • Homogenität zwischen Client und Server – Überall die selbe Programmiersprache 19
  • 20. Accu Google ... OSM Weather places Mapnik Tiles Clients Server HTTP / JSON Websites Desktop Browser LAMP PHP (HTML, JS, AJAX) Mobile Browser (HTML, JS, AJAX) Session Handler :8080 iPhone Servlets OSGi Java Session Handler :1090 (C/Objective C) (PhoneGap & HTML5) Android J2ME Valida- (PhoneGap & HTML5) (Java) OR tion ... BlackBerry Bada Lua Lua Lua TCP/IP / (PhoneGap & HTML5) (C/«C++») Lua Script Script Script ObjectStream 20
  • 21. • Bisheriges HTML: JavaScript, CSS, DOM... • Extensions: – Touch events – WebSockets – GPS, Accelerometer – Offline – Canvas und SVG – ... 21
  • 22. FreeBeerNear.me, OpenAppMkt.com, Orbium (jsway.se), kingdomgame.net, app.ft.com More on: http://web.appstorm.net/roundups/30-incredibly-useful-fun-html5-mobile-apps/ 22
  • 23. • Pilotifant für iPad • Meinzuerich2011.ch Interstitial 23
  • 25. • Container: PhoneGap • Inhalt: HTML5 – DOM-Objekte – JavaScript – WebSockets – CSS3 25 http://wiki.phonegap.com/w/page/36752779/PhoneGap%20Plugins
  • 26. • Benutzerschnittstellen-Baukasten • Geräte-Unabhängigkeit • Javascript-Helfer-Methoden • Animationen 26
  • 27. • jQTouch ‒ jQuery plugin für Android und iPhone • jQuery Mobile + gute Kombination mit bekanntem jquery ‒ mehr Handarbeit • Sencha touch + konsistent auf vielen Plattformen ‒ eigenartige Zwischensprache ‒ wenig Kontrolle auf untere Layers ‒ geht nicht auf Desktop Firefox und IE • M-Project, Jo, xui.js, EmbedJS, ... 27
  • 29. Accu Google ... OSM Weather places Mapnik Tiles Clients Server HTTP / JSON Websites Desktop Browser LAMP PHP (HTML, JS, AJAX) Mobile Browser (HTML, JS, AJAX) Session Handler :8080 iPhone Servlets OSGi Java Session Handler :1090 (C/Objective C) (PhoneGap & HTML5) Android J2ME Valida- (PhoneGap & HTML5) (Java) OR tion ... BlackBerry Bada Lua Lua Lua TCP/IP / (PhoneGap & HTML5) (C/«C++») Lua Script Script Script ObjectStream 29
  • 30. Accu Google ... OSM Weather places Mapnik Tiles Clients Server HTTP / JSON Websites Desktop Browser LAMP PHP (HTML, JS, AJAX) Mobile Browser (HTML, JS, AJAX) Session Handler :8080 Session Handler iPhone Servlets OSGi Java (PhoneGap & HTML5) Erlang Android Valida- (PhoneGap & HTML5) OR tion ... BlackBerry Lua Lua Lua (PhoneGap & HTML5) Lua Script Script Script 30
  • 31. Accu Google ... OSM Weather places Mapnik Tiles Clients Server HTTP / JSON Websites Desktop Browser LAMP PHP (HTML, JS, AJAX) Mobile Browser (HTML, JS, AJAX) :8080 Session Handler iPhone Servlets OSGi (PhoneGap & HTML5) Erlang Erlang JS JS Android Javascript VM Script Valida- Script (PhoneGap & HTML5) OR tion ... JS JS BlackBerry Lua Lua Lua (PhoneGap & HTML5) Lua Script Script Script Script Script 31
  • 32. Erlang: 1 Mio TCP-Verbindungen pro Server-Maschine (siehe WhatsApp Blog) JavaScript: • homogener Code für Client und Server • Code-Injektionen 32
  • 34. Browser War: Fragmentierung pro Handy- Plattform x Firmware x Browser-App Geschwindigkeit: bei Reaktionsfreudigkeit in Benutzerschnittstellen ein Problem Hardware-Beschleunigung fehlt (soll aber kommen): • mobile Animationen sind nur mit animierten GIF und Sprites/CSS-Position schnell • Canvas auf dem Handy ist ungefähr ~5 FPS 34
  • 35. We tell mixed-reality stories. IAETH Talk Montag, 16. Januar 2012 Matthias Sala matthias@gbanga.com