Welcome to the mobile galaxy!

Maurizio Moriconi
Maurizio MoriconiCTO, Mobile Developer at MobileSoft
Welcome to the mobile galaxy!

     Maurizio Moriconi

     maurizio.moriconi@mobilesoft.it - Mobilesoft




domenica 25 marzo 12
Un pò di storia...
      • Prima chiamata a St. Louis nel Missouri
        (USA) il 7 Giugno 1946 da un sistema di
        telefonia sviluppato dai Bell Laboratories.
      • Prima chiamata da un dispositivo mobile
        fatta con un Motorola nel 3 Aprile del1973
        da Martin Cooper (considerato l’inventore
        della telefonia mobile)
      • Ispirazione da Star Trek :)


                                                                   Maurizio Moriconi      2
                                           maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Primo sms della storia...
     • Vodafone GSM Network, UK
     • 3 Dicembre 1992
     • Il testo del messaggio era:


                       “Merry Christmas”

                                                              Maurizio Moriconi      3
                                      maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Evoluzione tecnologica
          1993 Primo smartphone (IBM Simon)
          1994 Bluetooth (Ericsson)
          1998 Primo schermo a colori
          2000 Primo sistema operativo per smartphone (Symbian su Ericsson R380)
          2001 Primo touch screen ‘evoluto’
          2006 Primo device con Wi-fi (Samsung SGH-P200)
          2007 Primi dispositivi con GPS integrato
          2011 Primo smartphone FullHD


                                                                             Maurizio Moriconi      4
                                                     maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Timeline OS per smartphone

          1996 Palm lancia Palm OS 1.0
          1997 Palm OS 2.0
          1998 Palm OS 3.0
          2000 Pocket PC 2000
          2001 Palm OS 4.0 e Pocket PC 2002
               Symbian 6.0, 6.1

                                                                Maurizio Moriconi      5
                                        maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Gli anni di windows mobile...
          2003 Windows Mobile 2003
          2003 Windows Mobile 2003 SE, Palm OS Cobalt

          2005 Windows Mobile 5, BlackBerry OS 4.1
               Google compra Android Inc

          2007 Windows Mobile 6, BlackBerry OS 4.2


                                                                 Maurizio Moriconi      6
                                         maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Arrivano iPhone OS ed Android!
          2007 iPhone OS 1.0



          2008 iPhone OS 2.0
               Android 1.0
               Symbian^1 (Series 60 5th Edition)
               BlackBerry OS 4.5, Windows Mobile 6.1


                                                                  Maurizio Moriconi      7
                                          maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
2009: OS World war :)
          BlackBerry OS 5.0, Windows Mobile 6.5
          Android 1.1


          1.5 (Cupcake)   1.6 (Donut)   2.0 / 2.1 (Eclair)
          Samsung Bada 1.0
          iPhone OS 3.0
          Web OS 1.0

                                                                                 Maurizio Moriconi      8
                                                         maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
2010: torna Windows Phone...

          iOS 4.0
          BlackBerry OS 6
          BlackBerry Tablet OS
          Windows Phone 7
          Android 2.2 (Froyo) 2.3 (GingerBread)
          Symbian^2 e Symbian^3
          Web OS 2.0
          Meego



                                                                          Maurizio Moriconi      9
                                                  maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
2011: L’anno dei tablet
          iOS 5.0
          Android 3.0 (HoneyComb), 3.1, 3.2
          Android 4.0 (Ice Cream Sandwich)
          Web OS 3.0
          Symbian Anna e Belle
          Blackberry OS 7
          Blackberry Tablet (Playbook) OS 2.0


                                                                   Maurizio Moriconi      10
                                           maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Sviluppo su Mobile
                                     Mobile != Desktop
                                 Mobile Web != Desktop Web
                       Rispetto al passato non ci sono più limitazioni hardware!!!

          Bisogna focalizzarsi principalmente su:
          - quantità di dati scaricati
          - uso della batteria
          - schermo
          - nuove possibilità: multi-touch, gps, fotocamera, accellerometro, realtà aumentata

                                                                                       Maurizio Moriconi      11
                                                               maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Come sviluppiamo su mobile?

          ✓App native

          ✓Widgets

          ✓App cross-platform

                                                               Maurizio Moriconi      12
                                       maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Sviluppo di app Native

     ✓ Diversi linguaggi di programmazione
     ✓ Diversi tool di sviluppo
     ✓ Diversa esperienza d’uso (UX = User eXperience)


                Applicazioni ottimizzate per la piattaforma!
                                                                Maurizio Moriconi      13
                                        maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
JavaME

                       Write once, run anywhere??

                                    No!

                       Write once, port everywhere :(

                                                                  Maurizio Moriconi      14
                                          maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
JavaME: IDE ed SDK
      • Sviluppo su: Windows, Mac OS X, Linux

      • Eclipse Pulsar
      • NetBeans

      • SDK: J2ME Wireless Toolkit 3.0.5
                                                          Maurizio Moriconi      15
                                  maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
The next billion...
      • Nokia Series 40
      • 1.5 miliardi di device
      • Nokia SDK 1.1 for Java
         – In-App purchase API
         – Nokia Touch and Type Gesture API
         – Nokia Touch and Type Animator API
         – Nokia UI API

                                                           Maurizio Moriconi      16
                                   maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
http://www.developer.nokia.com/Develop/Series_40




                                                              Maurizio Moriconi      17
                                      maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Blackberry OS
      • 2 possibilità:
                 • Blackberry Java (JavaME)
                 • WebWorks (HTML 5)

      • Sviluppo su:
                 • Windows
                 • Mac OS X (no simulatore)


                                                                      Maurizio Moriconi      18
                                              maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Blackberry OS
      • SDK per JavaME
            – BlackBerry Java Plug-in for Eclipse v 1.5

      • WebWorks
            – HTML 5
            – Ripple Emulator 0.9.1 beta


                                                                   Maurizio Moriconi      19
                                           maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Blackberry Tablet OS / BB 10
     •    CC ++ Native SDK 2.0
     •    HTML 5 WebWorks
     •    Blackberry Java
     •    Java Android Runtime
     •    Adobe AIR (Blackberry TabletOS SDK for Abode AIR 2.0)
     •    Open Source Components
          (OpenAL, boost, Box2d, Bullet Physics, Cocos2d-X, Lua, Qt, SDL)


                                                                              Maurizio Moriconi      20
                                                      maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
http://developer.blackberry.com




                                                                 Maurizio Moriconi      21
                                         maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Symbian / Meego
      •   Sviluppo su: Windows, Mac OS X, Linux
      •   Qt SDK 1.2
      •   Qt si pronuncia “cute”
      •   Linguaggio C/C++ facilitato dalle Qt
      •   QML (Qt Quick)


                                                         Maurizio Moriconi      22
                                 maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
http://www.developer.nokia.com/Develop/Qt




                                                     Maurizio Moriconi      23
                             maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Bada
      • Sviluppo solo su Windows
      • bada SDK 2.0.5
            – basato su Eclipse CDT e JSDT
      • Linguaggio: C/C ++ con delle eccezioni
      • Supporta Flash (Flash Lite 4 e ActionScript 3.0)
      • Supporta WAC widgets (HTML, Javascript, CSS)

                                                              Maurizio Moriconi      24
                                      maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
http://developer.bada.com




                                                              Maurizio Moriconi      25
                                      maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
iOS
      •   Sviluppo solo su Mac OS X (Intel-based)
      •   iOS SDK 5.1
      •   Linguaggio: Objective-C, C
      •   IDE: Xcode 4.x
      •   Possibilità di usare HTML5


                                                           Maurizio Moriconi      26
                                   maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Terze Parti

      •   Unreal Development Toolkit (Epic) http://www.udk.com
      •   MonoTouch (C# e .NET) http://www.xamarin.com/monotouch
      •   DragonFire SDK (Visual Studio C/C++) http://www.dragonfiresdk.com
      •   Unity 3 http://unity3d.com
      •   Corona SDK http://www.anscamobile.com/corona
      •   Marmalade SDK 5.2 http://www.madewithmarmalade.com/
      •   ...



                                                                        Maurizio Moriconi      27
                                                maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Frammentazione
      • Risoluzioni
         – iPhone/iPod Touch (320x480 vs 480x960)
         – iPad (768x1024 vs 1536x2048)
      • Versioni del sistema operativo
         – i device vengono aggiornati dagli utenti
             • 1 settimana per aggiornare il 25%
             • < 6 settimane per aggiornare il 50%
         – pochi device obsoleti (iPhone 2 e 3G)

                                                                 Maurizio Moriconi      28
                                         maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
http://developer.apple.com/iphone




                                                              Maurizio Moriconi      29
                                      maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Android
      •   Sviluppo su Windows, Mac OS X, Linux
      •   Android SDK 4.0.x
      •   IDE: Eclipse
      •   Linguaggio: Java



                                                         Maurizio Moriconi      30
                                 maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
NDK
      • Possibilità di sviluppare in C,C++
      • Tra le API nativi stabili supportate troviamo:
            – libc e libm headers
            – JNI headers
            – libz headers
            – OpenGL ES 1.1 e 2.0 (da Android 2.0)


                                                               Maurizio Moriconi      31
                                       maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Frammentazione delle versioni
                   Platform           Codename                  API Level Distribution
                Android 1.5       CupCake                            3       0.4%
                Android 1.6       Donut                              4       0.8%
                Android 2.1       Eclair                             7       6.6%
                Android 2.2       Froyo                              8      25.3%
                Android 2.3.x     Gingerbread                     9 - 10    62.0%
                Android 3.x       Honeycomb                      11 - 13     3.3%
                Android 4.0.x     Ice Cream Sandwich             14 - 15     1.6%
                          Dati aggiornati al 13/03/2012 (Fonte http://developer.android.com)

                                                                                          Maurizio Moriconi      32
                                                                  maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Frammentazione risoluzioni
                            ldpi                  mdpi                    hdpi                    xhdpi
              small        1.7%                                         2.4%

             normal        0.7%                  18.5%                 66.3%                       2.5%

              large        0.2%                   2.8%

             xlarge                               4.9%
                       Dati aggiornati al 13/03/2012 (Fonte http://developer.android.com)

                                                                                       Maurizio Moriconi      33
                                                               maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Frammentazione risoluzioni
                           ldpi (120)             mdpi (160)                 hdpi (240)                    xhdpi (320)
                       QVGA (240x320)                                  480x640
     Small screen
                       WQVGA400 (240x400)     HVGA (320x480)           WVGA800 (480x800)              640x960

    Normal screen      WQVGA432 (240x432)                              WVGA854 (480x854)
                                                                       600x1024

                       WVGA800 (480x800)      WVGA800* (480x800)
     Large screen      WVGA854 (480x854)      WVGA854* (480x854)
                                              600x1024
                       1024x600               WXGA (1280x800)          1536x1152                      2048x1536
      Extra Large                             1024x768                 1920x1152                      2560x1536
        Screen                                1280x768                 1920x1200                      2560x1600

                         Dati aggiornati al 13/03/2012 (Fonte http://developer.android.com)

                                                                                         Maurizio Moriconi        34
                                                                 maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
http://developer.android.com




                                                               Maurizio Moriconi      35
                                       maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Windows Phone
      •   Sviluppo su Windows
      •   Windows Phone 7.1 SDK
      •   IDE: Microsoft Visual Studio, Expression Blend
      •   Linguaggio: C# o VB.NET
      •   Applicazioni
           – Silverlight
           – XNA (anche per Xbox 360)
           – HTML5 (con PhoneGap)
                                                                    Maurizio Moriconi      36
                                            maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Frammentazione
      •   2 versioni: Windows Phone 7.0 e 7.5
      •   Hardware obbligatorio:
           – 3 bottoni (Start, Back, Search (invoca sempre Bing))
           – WVGA (480x800) display capacitivo (4 touch)
            – connessione Wi-fi o dati cellulare
            – 256 Mb o più di Ram , 8 GB o più di flash storage
            – A-GPS ed accellerometro
      •   Hardware facoltativo:
           – Compass e giroscopio
            – Camera (frontale e/o posteriore)

                                                                                Maurizio Moriconi      37
                                                        maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
http://create.msdn.com




                                                            Maurizio Moriconi      38
                                    maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Mobile Widgets
      •   Piccolo sito web installato su device
      •   Più veloci delle web-app
      •   Somigliano ad app native
      •   Possono girare sulla home del device
      •   Scritti in Html/Javascript/Css (un html solo index.htm)
      •   Framework utilizzabili:
           – JQuery, MooTools, YUI, Dojo, Guarana


                                                                     Maurizio Moriconi      39
                                             maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Widgets Standards
      • W3C
            – http://www.w3.org/TR/widgets
      •   JIL / WAC (Wholesale Applications Community)
      •   Nokia WRT (Widgets Run Time)
      •   BlackBerry WebWorks
      •   Vodafone 360

                                                               Maurizio Moriconi      40
                                       maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
App Cross-Platform
      • 120 app store differenti!!
               Linguaggio                           Piattaforme
         Actionscript       Blackberry Playbook OS, dispositivi con FlashLite
         C / C++            Bada, Symbian, Windows Phone, iOS, Android (NDK)...
         C#                 Windows Phone
         Objective-C        iOS
         Java               Android,
         JavaME             Blackberry, Symbian, dispositivi meno recenti
         Javascript         Blackberry, webOS, Mozilla Boot-to-Gecko

                                                                             Maurizio Moriconi      41
                                                     maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
App Cross-Platform
      • Varie possibilità:
            – Web technologies
                 • web-view incorporate in app native
            – Interpretation
                 • collegamento con API reali ma linguaggio nativo diverso
            – Cross compilation
                 • scrivi in un linguaggio, compili su più piattaforme

                                                                         Maurizio Moriconi      42
                                                 maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Web Technologies




                                                         Maurizio Moriconi      43
                                 maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Interpretation & Cross-compilation
      •   Appcelerator Titanium
      •   PhoneGap (Javascript)
      •   Rhodes 3.0 (Ruby)
      •   Corona
      •   Marmelade
      •   MoSync
      •   appMobi
                                                             Maurizio Moriconi      44
                                     maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Quale scegliere? In Europa...
                                                                               20,7%

                            Android
                            iOS
                            Symbian
                            RIM
                            Microsoft                        31,3%
                            Altri                                                                           30,0%



       Market Share Mobile Europa Dic 2011 (dati comScore)                 3,4%
                                                                              5,2%
                                                                                            9,4%
                                                                                     Maurizio Moriconi       45
                                                             maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Quale scegliere? In Italia...
                             Android                         15,8%
                             iOS                                                                             52,8%
                             Symbian
                             RIM
                             Microsoft
                             Altri                            17,9%


                                                                          1,6%
       Market Share Mobile Italia Dic 2011 (dati comScore)                   7,0%
                                                                                          4,9%

                                                                                      Maurizio Moriconi      46
                                                              maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Uso su web in Italia nel 2012...
                                                                                                            48,4%
                              Android
                              iOS
                              Symbian
                              Microsoft                         30,5%
                              Altri


             Stat Counter (gs.statcounter.com) Italia 2012                     6,0%
                                                                                  1,2%
                                                                                             13,9%

                                                                                     Maurizio Moriconi          47
                                                             maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Quale scegliere??
       Piattaforma             mesi ttm              Piattaforma                      % developer
       Android                     5.7         Android                                        67%
       Blackberry                  6.1         iOS                                            59%
       iOS                         6.8         mobile web                                     56%
       mobile web                  8.7
                                               Java ME                                        46%
       Symbian                     9.8
                                               Blackberry                                     45%
       Java ME                    10.6
                       www.DeveloperEconomics.com (2011 Vision Mobile)
                                                                             Maurizio Moriconi
                                                     maurizio.moriconi@mobilesoft.it - Mobilesoft
                                                                                                    48

domenica 25 marzo 12
http://www.wipconnector.com/




                                                               Maurizio Moriconi      49
                                       maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
Grazie!
                                           Maurizio Moriconi



         •   CTO presso Mobilesoft                                   •     Co-founder
         •   Mobile Developer                                        •     Main Developer


                       http://www.linkedin.com/in/bugman                       @bugman79


                                     http://www.facebook.com/maurizio.moriconi

                                                                                   Maurizio Moriconi      50
                                                           maurizio.moriconi@mobilesoft.it - Mobilesoft

domenica 25 marzo 12
1 of 50

Recommended

Mobile Web e oltre - Gianluigi Zarantonello by
Mobile Web e oltre - Gianluigi ZarantonelloMobile Web e oltre - Gianluigi Zarantonello
Mobile Web e oltre - Gianluigi ZarantonelloYoung Digital Lab
336 views20 slides
Gestire i pdf con iOS by
Gestire i pdf con iOSGestire i pdf con iOS
Gestire i pdf con iOSMaurizio Moriconi
5.9K views44 slides
Cocos2d: creare videogiochi con facilità! by
Cocos2d: creare videogiochi con facilità!Cocos2d: creare videogiochi con facilità!
Cocos2d: creare videogiochi con facilità!Maurizio Moriconi
1K views42 slides
Verso la mobilita by
Verso la mobilitaVerso la mobilita
Verso la mobilitaLuca Mascaro
658 views44 slides
Smau Milano 2011 Massimo Farina - smartphone e tablet by
Smau Milano 2011 Massimo Farina - smartphone e tabletSmau Milano 2011 Massimo Farina - smartphone e tablet
Smau Milano 2011 Massimo Farina - smartphone e tabletSmau
509 views27 slides
12 - Mobile web by
12 - Mobile web12 - Mobile web
12 - Mobile webGiuseppe Vizzari
2.3K views40 slides

More Related Content

Similar to Welcome to the mobile galaxy!

Curriculum Vitae di Antonio Terranova by
Curriculum Vitae di Antonio TerranovaCurriculum Vitae di Antonio Terranova
Curriculum Vitae di Antonio TerranovaAntonio Terranova
382 views2 slides
Curriculum Vitae aggiornato al 17.12.2018 by
Curriculum Vitae aggiornato al 17.12.2018Curriculum Vitae aggiornato al 17.12.2018
Curriculum Vitae aggiornato al 17.12.2018Antonio Terranova
228 views2 slides
Micro Applicazioni Mobile by
Micro Applicazioni MobileMicro Applicazioni Mobile
Micro Applicazioni Mobilevalentinavalentina
365 views17 slides
Domainshow.it by
Domainshow.itDomainshow.it
Domainshow.itFrancesco Cetraro
292 views15 slides
Introduction to iOS development with Xamarin by
Introduction to iOS development with XamarinIntroduction to iOS development with Xamarin
Introduction to iOS development with XamarinRaffaele Fanizzi
2K views32 slides
10 - Evoluzione del Web: dal Web 1.0, al Web 2.0, al mobile web - 16/17 by
10 - Evoluzione del Web: dal Web 1.0, al Web 2.0, al mobile web - 16/1710 - Evoluzione del Web: dal Web 1.0, al Web 2.0, al mobile web - 16/17
10 - Evoluzione del Web: dal Web 1.0, al Web 2.0, al mobile web - 16/17Giuseppe Vizzari
3.6K views71 slides

Similar to Welcome to the mobile galaxy!(10)

Curriculum Vitae aggiornato al 17.12.2018 by Antonio Terranova
Curriculum Vitae aggiornato al 17.12.2018Curriculum Vitae aggiornato al 17.12.2018
Curriculum Vitae aggiornato al 17.12.2018
Antonio Terranova228 views
Introduction to iOS development with Xamarin by Raffaele Fanizzi
Introduction to iOS development with XamarinIntroduction to iOS development with Xamarin
Introduction to iOS development with Xamarin
Raffaele Fanizzi2K views
10 - Evoluzione del Web: dal Web 1.0, al Web 2.0, al mobile web - 16/17 by Giuseppe Vizzari
10 - Evoluzione del Web: dal Web 1.0, al Web 2.0, al mobile web - 16/1710 - Evoluzione del Web: dal Web 1.0, al Web 2.0, al mobile web - 16/17
10 - Evoluzione del Web: dal Web 1.0, al Web 2.0, al mobile web - 16/17
Giuseppe Vizzari3.6K views
IoT GrandPrix: workshop e gara con Raspberry Pi by Commit University
IoT GrandPrix: workshop e gara con Raspberry Pi IoT GrandPrix: workshop e gara con Raspberry Pi
IoT GrandPrix: workshop e gara con Raspberry Pi
Commit University100 views
Funzionalità e portabilità dei sistemi operativi per piattaforme mobili by Nicola Losito
Funzionalità e portabilità dei sistemi operativi per piattaforme mobiliFunzionalità e portabilità dei sistemi operativi per piattaforme mobili
Funzionalità e portabilità dei sistemi operativi per piattaforme mobili
Nicola Losito654 views

Welcome to the mobile galaxy!

  • 1. Welcome to the mobile galaxy! Maurizio Moriconi maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 2. Un pò di storia... • Prima chiamata a St. Louis nel Missouri (USA) il 7 Giugno 1946 da un sistema di telefonia sviluppato dai Bell Laboratories. • Prima chiamata da un dispositivo mobile fatta con un Motorola nel 3 Aprile del1973 da Martin Cooper (considerato l’inventore della telefonia mobile) • Ispirazione da Star Trek :) Maurizio Moriconi 2 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 3. Primo sms della storia... • Vodafone GSM Network, UK • 3 Dicembre 1992 • Il testo del messaggio era: “Merry Christmas” Maurizio Moriconi 3 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 4. Evoluzione tecnologica 1993 Primo smartphone (IBM Simon) 1994 Bluetooth (Ericsson) 1998 Primo schermo a colori 2000 Primo sistema operativo per smartphone (Symbian su Ericsson R380) 2001 Primo touch screen ‘evoluto’ 2006 Primo device con Wi-fi (Samsung SGH-P200) 2007 Primi dispositivi con GPS integrato 2011 Primo smartphone FullHD Maurizio Moriconi 4 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 5. Timeline OS per smartphone 1996 Palm lancia Palm OS 1.0 1997 Palm OS 2.0 1998 Palm OS 3.0 2000 Pocket PC 2000 2001 Palm OS 4.0 e Pocket PC 2002 Symbian 6.0, 6.1 Maurizio Moriconi 5 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 6. Gli anni di windows mobile... 2003 Windows Mobile 2003 2003 Windows Mobile 2003 SE, Palm OS Cobalt 2005 Windows Mobile 5, BlackBerry OS 4.1 Google compra Android Inc 2007 Windows Mobile 6, BlackBerry OS 4.2 Maurizio Moriconi 6 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 7. Arrivano iPhone OS ed Android! 2007 iPhone OS 1.0 2008 iPhone OS 2.0 Android 1.0 Symbian^1 (Series 60 5th Edition) BlackBerry OS 4.5, Windows Mobile 6.1 Maurizio Moriconi 7 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 8. 2009: OS World war :) BlackBerry OS 5.0, Windows Mobile 6.5 Android 1.1 1.5 (Cupcake) 1.6 (Donut) 2.0 / 2.1 (Eclair) Samsung Bada 1.0 iPhone OS 3.0 Web OS 1.0 Maurizio Moriconi 8 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 9. 2010: torna Windows Phone... iOS 4.0 BlackBerry OS 6 BlackBerry Tablet OS Windows Phone 7 Android 2.2 (Froyo) 2.3 (GingerBread) Symbian^2 e Symbian^3 Web OS 2.0 Meego Maurizio Moriconi 9 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 10. 2011: L’anno dei tablet iOS 5.0 Android 3.0 (HoneyComb), 3.1, 3.2 Android 4.0 (Ice Cream Sandwich) Web OS 3.0 Symbian Anna e Belle Blackberry OS 7 Blackberry Tablet (Playbook) OS 2.0 Maurizio Moriconi 10 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 11. Sviluppo su Mobile Mobile != Desktop Mobile Web != Desktop Web Rispetto al passato non ci sono più limitazioni hardware!!! Bisogna focalizzarsi principalmente su: - quantità di dati scaricati - uso della batteria - schermo - nuove possibilità: multi-touch, gps, fotocamera, accellerometro, realtà aumentata Maurizio Moriconi 11 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 12. Come sviluppiamo su mobile? ✓App native ✓Widgets ✓App cross-platform Maurizio Moriconi 12 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 13. Sviluppo di app Native ✓ Diversi linguaggi di programmazione ✓ Diversi tool di sviluppo ✓ Diversa esperienza d’uso (UX = User eXperience) Applicazioni ottimizzate per la piattaforma! Maurizio Moriconi 13 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 14. JavaME Write once, run anywhere?? No! Write once, port everywhere :( Maurizio Moriconi 14 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 15. JavaME: IDE ed SDK • Sviluppo su: Windows, Mac OS X, Linux • Eclipse Pulsar • NetBeans • SDK: J2ME Wireless Toolkit 3.0.5 Maurizio Moriconi 15 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 16. The next billion... • Nokia Series 40 • 1.5 miliardi di device • Nokia SDK 1.1 for Java – In-App purchase API – Nokia Touch and Type Gesture API – Nokia Touch and Type Animator API – Nokia UI API Maurizio Moriconi 16 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 17. http://www.developer.nokia.com/Develop/Series_40 Maurizio Moriconi 17 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 18. Blackberry OS • 2 possibilità: • Blackberry Java (JavaME) • WebWorks (HTML 5) • Sviluppo su: • Windows • Mac OS X (no simulatore) Maurizio Moriconi 18 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 19. Blackberry OS • SDK per JavaME – BlackBerry Java Plug-in for Eclipse v 1.5 • WebWorks – HTML 5 – Ripple Emulator 0.9.1 beta Maurizio Moriconi 19 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 20. Blackberry Tablet OS / BB 10 • CC ++ Native SDK 2.0 • HTML 5 WebWorks • Blackberry Java • Java Android Runtime • Adobe AIR (Blackberry TabletOS SDK for Abode AIR 2.0) • Open Source Components (OpenAL, boost, Box2d, Bullet Physics, Cocos2d-X, Lua, Qt, SDL) Maurizio Moriconi 20 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 21. http://developer.blackberry.com Maurizio Moriconi 21 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 22. Symbian / Meego • Sviluppo su: Windows, Mac OS X, Linux • Qt SDK 1.2 • Qt si pronuncia “cute” • Linguaggio C/C++ facilitato dalle Qt • QML (Qt Quick) Maurizio Moriconi 22 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 23. http://www.developer.nokia.com/Develop/Qt Maurizio Moriconi 23 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 24. Bada • Sviluppo solo su Windows • bada SDK 2.0.5 – basato su Eclipse CDT e JSDT • Linguaggio: C/C ++ con delle eccezioni • Supporta Flash (Flash Lite 4 e ActionScript 3.0) • Supporta WAC widgets (HTML, Javascript, CSS) Maurizio Moriconi 24 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 25. http://developer.bada.com Maurizio Moriconi 25 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 26. iOS • Sviluppo solo su Mac OS X (Intel-based) • iOS SDK 5.1 • Linguaggio: Objective-C, C • IDE: Xcode 4.x • Possibilità di usare HTML5 Maurizio Moriconi 26 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 27. Terze Parti • Unreal Development Toolkit (Epic) http://www.udk.com • MonoTouch (C# e .NET) http://www.xamarin.com/monotouch • DragonFire SDK (Visual Studio C/C++) http://www.dragonfiresdk.com • Unity 3 http://unity3d.com • Corona SDK http://www.anscamobile.com/corona • Marmalade SDK 5.2 http://www.madewithmarmalade.com/ • ... Maurizio Moriconi 27 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 28. Frammentazione • Risoluzioni – iPhone/iPod Touch (320x480 vs 480x960) – iPad (768x1024 vs 1536x2048) • Versioni del sistema operativo – i device vengono aggiornati dagli utenti • 1 settimana per aggiornare il 25% • < 6 settimane per aggiornare il 50% – pochi device obsoleti (iPhone 2 e 3G) Maurizio Moriconi 28 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 29. http://developer.apple.com/iphone Maurizio Moriconi 29 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 30. Android • Sviluppo su Windows, Mac OS X, Linux • Android SDK 4.0.x • IDE: Eclipse • Linguaggio: Java Maurizio Moriconi 30 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 31. NDK • Possibilità di sviluppare in C,C++ • Tra le API nativi stabili supportate troviamo: – libc e libm headers – JNI headers – libz headers – OpenGL ES 1.1 e 2.0 (da Android 2.0) Maurizio Moriconi 31 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 32. Frammentazione delle versioni Platform Codename API Level Distribution Android 1.5 CupCake 3 0.4% Android 1.6 Donut 4 0.8% Android 2.1 Eclair 7 6.6% Android 2.2 Froyo 8 25.3% Android 2.3.x Gingerbread 9 - 10 62.0% Android 3.x Honeycomb 11 - 13 3.3% Android 4.0.x Ice Cream Sandwich 14 - 15 1.6% Dati aggiornati al 13/03/2012 (Fonte http://developer.android.com) Maurizio Moriconi 32 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 33. Frammentazione risoluzioni ldpi mdpi hdpi xhdpi small 1.7% 2.4% normal 0.7% 18.5% 66.3% 2.5% large 0.2% 2.8% xlarge 4.9% Dati aggiornati al 13/03/2012 (Fonte http://developer.android.com) Maurizio Moriconi 33 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 34. Frammentazione risoluzioni ldpi (120) mdpi (160) hdpi (240) xhdpi (320) QVGA (240x320) 480x640 Small screen WQVGA400 (240x400) HVGA (320x480) WVGA800 (480x800) 640x960 Normal screen WQVGA432 (240x432) WVGA854 (480x854) 600x1024 WVGA800 (480x800) WVGA800* (480x800) Large screen WVGA854 (480x854) WVGA854* (480x854) 600x1024 1024x600 WXGA (1280x800) 1536x1152 2048x1536 Extra Large 1024x768 1920x1152 2560x1536 Screen 1280x768 1920x1200 2560x1600 Dati aggiornati al 13/03/2012 (Fonte http://developer.android.com) Maurizio Moriconi 34 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 35. http://developer.android.com Maurizio Moriconi 35 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 36. Windows Phone • Sviluppo su Windows • Windows Phone 7.1 SDK • IDE: Microsoft Visual Studio, Expression Blend • Linguaggio: C# o VB.NET • Applicazioni – Silverlight – XNA (anche per Xbox 360) – HTML5 (con PhoneGap) Maurizio Moriconi 36 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 37. Frammentazione • 2 versioni: Windows Phone 7.0 e 7.5 • Hardware obbligatorio: – 3 bottoni (Start, Back, Search (invoca sempre Bing)) – WVGA (480x800) display capacitivo (4 touch) – connessione Wi-fi o dati cellulare – 256 Mb o più di Ram , 8 GB o più di flash storage – A-GPS ed accellerometro • Hardware facoltativo: – Compass e giroscopio – Camera (frontale e/o posteriore) Maurizio Moriconi 37 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 38. http://create.msdn.com Maurizio Moriconi 38 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 39. Mobile Widgets • Piccolo sito web installato su device • Più veloci delle web-app • Somigliano ad app native • Possono girare sulla home del device • Scritti in Html/Javascript/Css (un html solo index.htm) • Framework utilizzabili: – JQuery, MooTools, YUI, Dojo, Guarana Maurizio Moriconi 39 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 40. Widgets Standards • W3C – http://www.w3.org/TR/widgets • JIL / WAC (Wholesale Applications Community) • Nokia WRT (Widgets Run Time) • BlackBerry WebWorks • Vodafone 360 Maurizio Moriconi 40 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 41. App Cross-Platform • 120 app store differenti!! Linguaggio Piattaforme Actionscript Blackberry Playbook OS, dispositivi con FlashLite C / C++ Bada, Symbian, Windows Phone, iOS, Android (NDK)... C# Windows Phone Objective-C iOS Java Android, JavaME Blackberry, Symbian, dispositivi meno recenti Javascript Blackberry, webOS, Mozilla Boot-to-Gecko Maurizio Moriconi 41 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 42. App Cross-Platform • Varie possibilità: – Web technologies • web-view incorporate in app native – Interpretation • collegamento con API reali ma linguaggio nativo diverso – Cross compilation • scrivi in un linguaggio, compili su più piattaforme Maurizio Moriconi 42 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 43. Web Technologies Maurizio Moriconi 43 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 44. Interpretation & Cross-compilation • Appcelerator Titanium • PhoneGap (Javascript) • Rhodes 3.0 (Ruby) • Corona • Marmelade • MoSync • appMobi Maurizio Moriconi 44 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 45. Quale scegliere? In Europa... 20,7% Android iOS Symbian RIM Microsoft 31,3% Altri 30,0% Market Share Mobile Europa Dic 2011 (dati comScore) 3,4% 5,2% 9,4% Maurizio Moriconi 45 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 46. Quale scegliere? In Italia... Android 15,8% iOS 52,8% Symbian RIM Microsoft Altri 17,9% 1,6% Market Share Mobile Italia Dic 2011 (dati comScore) 7,0% 4,9% Maurizio Moriconi 46 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 47. Uso su web in Italia nel 2012... 48,4% Android iOS Symbian Microsoft 30,5% Altri Stat Counter (gs.statcounter.com) Italia 2012 6,0% 1,2% 13,9% Maurizio Moriconi 47 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 48. Quale scegliere?? Piattaforma mesi ttm Piattaforma % developer Android 5.7 Android 67% Blackberry 6.1 iOS 59% iOS 6.8 mobile web 56% mobile web 8.7 Java ME 46% Symbian 9.8 Blackberry 45% Java ME 10.6 www.DeveloperEconomics.com (2011 Vision Mobile) Maurizio Moriconi maurizio.moriconi@mobilesoft.it - Mobilesoft 48 domenica 25 marzo 12
  • 49. http://www.wipconnector.com/ Maurizio Moriconi 49 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12
  • 50. Grazie! Maurizio Moriconi • CTO presso Mobilesoft • Co-founder • Mobile Developer • Main Developer http://www.linkedin.com/in/bugman @bugman79 http://www.facebook.com/maurizio.moriconi Maurizio Moriconi 50 maurizio.moriconi@mobilesoft.it - Mobilesoft domenica 25 marzo 12