Développement
sur mobiles


Jean-Marie Gilliot




07/02/2012
Du Web au mobile

          Web  2 et mobile
          Qu’est ce qu’un mobile ?
           • Services
           • Applications
          Options de développement
           • WebApps
           • Android
           • iOS




page 1     Développement sur mobiles
Web 1.0 – Web 2.0


                                        Webmestre




                                     Site Web




                             Utilisateur        Utilisateur

                                      Utilisateur


page 2   Développement sur mobiles
Réseaux sociaux & nuages
                                                                            •Recherche
                                      Données                               •Fils de nouvelles
                                      &                                     •Syndication
                                      Traitements                           •Filtrage
                                                                            •Recommandation




                                                                         Visualisations variées
•Self Generated content
     •Blogs
     •Wikis                                                              Identité
                                                                         numérique
•Balisage (tags)
•Gestion collective de liens
 (social bookmarking)                               Brouillage entre
                                                    formel et informel
     page 3    Développement sur mobiles
Mobilité et objets

                                                          •Localisée
                                   Données                •Intégré dans
•Localisation
                                   &                      l’environnement
•Identification
                                   Traitements            •Consolidée
•Reconnaissance




  Wikitude                                       •Partout
  6th sense                                      •Toujours
  Ville augmentée                                •Interconnecté ?
                                                 •Contextuel ?


  page 4   Développement sur mobiles
Le mobile est
            Le mobile est un ordinateur
            Le mobile est un système embarqué
            Le mobile est un système multi-capteur
             • Le mobile est géolocalisé
            Le mobile est multi-canal
            Le mobile est connecté
            Le mobile est programmable

            Le mobile est un balladeur, une console de jeux, un couteau
             suisse numérique …
            Le mobile est le premier terminal de réalité augmentée, un
             lien avec le monde réel
            Le mobile est social
            Le mobile est personnel
            Le mobile est pervasif (remote control)

page 5       Développement sur mobiles
Exemple de services

 Reconnaissance
 •   Lecteurs de QR codes
 •   Goggle
 •   Shazam
 •   Reconnaissance vocale

 Détournement           capteurs
 • Instant Heart

 Réalité   augmentée
 • Layar
 • Wikitude
 page 6   Développement sur mobiles
Exemples de services

          Réseaux   sociaux
          • Et silos de données

          Agregationsociale
          • WideNoise de WideTag :
             http://www.widetag.com/widenoise/#

             - et couplages avec spimes : énergie - CO2




page 7     Développement sur mobiles
Exemple de services

          Consultation
          • Wolfram Alpha

          Enregistrer        sa vie
          • Evernote

          Applications          géolocalisées
          • Foursquare
          • Geocaching
          • …

page 8     Développement sur mobiles
Et les Jeux …




page 9   Développement sur mobiles
Et les jeux …

       Pour jouer partout …
       … Et pour de nouvelles expériences




page 10   Développement sur mobiles
Et après ?

       Outil      de paiement

       Spimes
          • Le mobile est la partie émergée de l’Iceberg

       Université          augmentée

       Streaming            TV HD

       Reconnaissance      et information ubiquitaire
          (Goggle, Visual directed browsing :
          http://www.youtube.com/watch?v=gtuGSWDVdQU&feature=player_embedded   …) :

page 11    Développement sur mobiles
Options de développement

       Applications    Natives
          • Android, iOS, Windows Mobile …

  Hybride : Code web et Container
     APIs mobile in JS
     Dév web et publication market


       WebApps
          • HTML5, CSS, javascript dans un navigateur
            (Webkit)



page 12   Développement sur mobiles
Code web et container                    Pour
                                               Programmeurs
                                                    Web
       HTML    5
        • Web / CSS
        • Offline cache, localStorage, sessionStorage, client-
          side dB
       Javascript
        • jQTouch, SenchaTouch (framework)…et al.
       APIs mobiles natives
        • PhoneGap (MIT/ Open source) -
       Multiplateformes -> sur markets


       Lecture        : building iPhoneApps with HTML…
page 13   Développement sur mobiles
Traducteurs multi plateformes      Prototypage
                                               Portage
                                                rapide

       Exemple     Appcelerator Titanium
          • Écriture javascrpit
          • Traduction : iPhone& Android …




page 14   Développement sur mobiles
Architecture Android




page 15   Développement sur mobiles
Environnement de développement

       Eclipse + Java
       ADT : Android Dev Tools
        • Android SDK
        • AVD (Android Virtual Device)
        • Adb
       Et surtout



                 http://developer.android.com/


page 16   Développement sur mobiles
Chaine de développement




page 17   Développement sur mobiles
Mobile devices
          & Design




 http://developer.android.com


 User  Expectations
   • Access anywhere, because we are mobile
   • Quick Response Time, because we are Impatient
   • Resource non-intensive, because we are cautious



page 18   Développement sur mobiles
Qu’est ce qui est important

       Écran
        • Taille, densité => dp
       Supporter plusieurs écrans ?
        • Icônes
        • Doigts
       Fragments ?




page 19   Développement sur mobiles
Fondamentaux




page 20   Développement sur mobiles
Cycle de vie
          d’une activité




page 21   Développement sur mobiles
Ne pas oublier

       Manifest file
        • Déclarer …
        • Version Android
       Changements de configuration




       Faire     des tutoriaux !




page 22   Développement sur mobiles
Et iOS ?




page 23   Développement sur mobiles
Etats d’un app iOS




page 24   Développement sur mobiles

Développement sur Mobile

  • 1.
  • 2.
    Du Web aumobile  Web 2 et mobile  Qu’est ce qu’un mobile ? • Services • Applications  Options de développement • WebApps • Android • iOS page 1 Développement sur mobiles
  • 3.
    Web 1.0 –Web 2.0 Webmestre Site Web Utilisateur Utilisateur Utilisateur page 2 Développement sur mobiles
  • 4.
    Réseaux sociaux &nuages •Recherche Données •Fils de nouvelles & •Syndication Traitements •Filtrage •Recommandation Visualisations variées •Self Generated content •Blogs •Wikis Identité numérique •Balisage (tags) •Gestion collective de liens (social bookmarking) Brouillage entre formel et informel page 3 Développement sur mobiles
  • 5.
    Mobilité et objets •Localisée Données •Intégré dans •Localisation & l’environnement •Identification Traitements •Consolidée •Reconnaissance Wikitude •Partout 6th sense •Toujours Ville augmentée •Interconnecté ? •Contextuel ? page 4 Développement sur mobiles
  • 6.
    Le mobile est  Le mobile est un ordinateur  Le mobile est un système embarqué  Le mobile est un système multi-capteur • Le mobile est géolocalisé  Le mobile est multi-canal  Le mobile est connecté  Le mobile est programmable  Le mobile est un balladeur, une console de jeux, un couteau suisse numérique …  Le mobile est le premier terminal de réalité augmentée, un lien avec le monde réel  Le mobile est social  Le mobile est personnel  Le mobile est pervasif (remote control) page 5 Développement sur mobiles
  • 7.
    Exemple de services Reconnaissance • Lecteurs de QR codes • Goggle • Shazam • Reconnaissance vocale  Détournement capteurs • Instant Heart  Réalité augmentée • Layar • Wikitude page 6 Développement sur mobiles
  • 8.
    Exemples de services  Réseaux sociaux • Et silos de données  Agregationsociale • WideNoise de WideTag : http://www.widetag.com/widenoise/# - et couplages avec spimes : énergie - CO2 page 7 Développement sur mobiles
  • 9.
    Exemple de services  Consultation • Wolfram Alpha  Enregistrer sa vie • Evernote  Applications géolocalisées • Foursquare • Geocaching • … page 8 Développement sur mobiles
  • 10.
    Et les Jeux… page 9 Développement sur mobiles
  • 11.
    Et les jeux…  Pour jouer partout …  … Et pour de nouvelles expériences page 10 Développement sur mobiles
  • 12.
    Et après ?  Outil de paiement  Spimes • Le mobile est la partie émergée de l’Iceberg  Université augmentée  Streaming TV HD  Reconnaissance et information ubiquitaire (Goggle, Visual directed browsing : http://www.youtube.com/watch?v=gtuGSWDVdQU&feature=player_embedded …) : page 11 Développement sur mobiles
  • 13.
    Options de développement  Applications Natives • Android, iOS, Windows Mobile … Hybride : Code web et Container APIs mobile in JS Dév web et publication market  WebApps • HTML5, CSS, javascript dans un navigateur (Webkit) page 12 Développement sur mobiles
  • 14.
    Code web etcontainer Pour Programmeurs Web  HTML 5 • Web / CSS • Offline cache, localStorage, sessionStorage, client- side dB  Javascript • jQTouch, SenchaTouch (framework)…et al.  APIs mobiles natives • PhoneGap (MIT/ Open source) -  Multiplateformes -> sur markets  Lecture : building iPhoneApps with HTML… page 13 Développement sur mobiles
  • 15.
    Traducteurs multi plateformes Prototypage Portage rapide  Exemple Appcelerator Titanium • Écriture javascrpit • Traduction : iPhone& Android … page 14 Développement sur mobiles
  • 16.
    Architecture Android page 15 Développement sur mobiles
  • 17.
    Environnement de développement  Eclipse + Java  ADT : Android Dev Tools • Android SDK • AVD (Android Virtual Device) • Adb  Et surtout http://developer.android.com/ page 16 Développement sur mobiles
  • 18.
    Chaine de développement page17 Développement sur mobiles
  • 19.
    Mobile devices & Design  http://developer.android.com  User Expectations • Access anywhere, because we are mobile • Quick Response Time, because we are Impatient • Resource non-intensive, because we are cautious page 18 Développement sur mobiles
  • 20.
    Qu’est ce quiest important  Écran • Taille, densité => dp  Supporter plusieurs écrans ? • Icônes • Doigts  Fragments ? page 19 Développement sur mobiles
  • 21.
    Fondamentaux page 20 Développement sur mobiles
  • 22.
    Cycle de vie d’une activité page 21 Développement sur mobiles
  • 23.
    Ne pas oublier  Manifest file • Déclarer … • Version Android  Changements de configuration  Faire des tutoriaux ! page 22 Développement sur mobiles
  • 24.
    Et iOS ? page23 Développement sur mobiles
  • 25.
    Etats d’un appiOS page 24 Développement sur mobiles