SlideShare a Scribd company logo
1 of 54
Hvordan lage en vellykket Windows
          Phone 7 APP


     Erfaringer fra 7 forskjellige apps
   utviklet høsten 2011 og vinteren 2012




             Mobile Meetup Oslo
       Jonas Follesø & Dan Robert Ekrem
                 28/03/2012
Om oss




         Jonas Follesø
         Scientist & Manager BEKK Trondheim
         Microsoft MVP Silverlight




         Dan Robert Ekrem
         UX Designer, BEKK Oslo
         Metro 8 Trainer
agenda



         Bakgrunn
         Metro Design Språk
         Implementering av Metro
         Tiles, testing og publisering
         Spørsmål
Bakgrunn
Apps vi har jobbet med
Sluttbrukere liker Metro


                      “Nyttig applikasjon, fint utseende også med
                      Metro.”

                      “Fungerer svært bra og ser delikat ut.”


                      “Meget ambisiøs og vel gjennomført app. Innholder
                      alle tenkbare features og alt er pent og føles
                      skikkelig solid.”



                      “Bra design. Oversiktlig app som gir rask tilgang
                      til de viktigste banktjenestene. Farvel til
                      telefonbank :-D”
HVA ER
METRO?
Prinsipper vs Språk




The Metro Design                The Metro Design
Principles                      Language
the pillars (usually abstract   set of concrete user
concepts) that guide the        interaction, visual design,
creation of experiences for     motion and application flow
Windows Phone.                  elements and rules.
INTERACTION AWARDS
http://awards.ixda.org/entry/2012/windows-phone-75-mango
Hvordan vi
implementerte
    Metro
Posten Sporing
SpareBank 1 Mobilbank
Telenor Faktura
Wordfeud
Avinor
Verktøy
C# SOM SPRÅK, XNA FOR GAMES, SILVERLIGHT FOR APPS
RIKTIG VERKTØY – BLEND + VISUAL STUDIO
TILGANG TIL ALLE API’ENE VI TRENGTE



•   Tilgang til adressebok (SpareBank 1 Venneregnskap, Wordfeud)
•   SMS (SpareBank 1 Venneregnskap)
•   Lokasjon (Telenor Utland, Posten Sporing)
•   Push Notifications (Wordfeud)
•   Kamera (VG Snarvei, Wordfeud)
•   SQLite Database (Posten Sporing)


•   ... Og alt av «basis» funksjonalitet som nettverk, web tjenester,
    filaksess osv.
Benytt
Live Tiles
3 Måter å implementere Live Tiles




1. Secondary Tiles

2. Live Tiles using Background Agents

3. Live Tiles using Push Notifications
3 ways to implement live tiles




1. Secondary Tiles

2. Live Tiles using Background Agents

3. Live Tiles using Push Notifications
Live Tiles 1 – Secondary Tiles



                                 • Mulig for en app å ha flere tiles
                                   på startskjermen.


                                 • Kan lenke til et bestemt
                                   område i appen.


                                 • Kan oppdateres programatisk
                                   til å vise ny informasjon.
Live Tiles 1 – Secondary Tiles



                                 • Mulig å dynamisk generere
                                   grafikken til tile på telefonen.
3 ways to implement live tiles




1. Secondary Tiles

2. Live Tiles using Background Agents

3. Live Tiles using Push Notifications
Live Tiles 2 – Updating Tiles using Background Agents



                                           • Mulig å oppdatere både primær og
                                             sekundær tile fra kode.

                                           • Kan bruke en Background Agent
                                             til å oppdatere en Live Tile.
Background Agents




                                       app logic

                                    agent instance

                             6 MB minne
                             25 sekunder kjøretid
                app logic

               UI instance
Live Tiles 2 – Updating Tiles using Background Agents



                                           • Kan og oppdatere sekundær tiles
                                             fra bakgrunnsagent.
3 ways to implement live tiles




1. Secondary Tiles

2. Live Tiles using Background Agents

3. Live Tiles using Push Notifications
WP7
                      PUSH
                   NOTIFIC
 Your WP
Applicatio
    n
             2 Hand
               off
              chan
                    ATIONS  Your
                  n
             el U            Web
                 RL
                            Appli
                            catio
                              n
   Push
 Library
                  4          Push
                     Pu     3mess
  PUSH           1 mes sh
                   O   s     age
 CLIENT          Ch pe ag
                     e
                    an n
                            Micro
                    l ne
                            soft
                            Push
                            Notifi
                            catio
                              n
                            Servi
                             ces
Tile Notification Payload

<?xml version="1.0" encoding="utf-8"?>
<wp:Notification xmlns:wp="WPNotification">
  <wp:Tile>
    <wp:BackgroundImage>Background.jpg</wp:BackgroundImage>
    <wp:Count>3</wp:Count>
    <wp:Title>Title</wp:Title>
    <wp:BackBackgroundImage>BackBackground.jpg</wp:BackBackgroundImage>
    <wp:BackTitle>Back Title</wp:BackTitle>
    <wp:BackContent>Back Content</wp:BackContent>
  </wp:Tile>
</wp:Notification>



• XML pushes til telefonen for å oppdatere Tile.


• Støtte for både eksterne og lokale URL-er for bilder.
Live Tiles 3 – Using Push Notifications



                                          • Standard tile.


                                          • Tile med antall aktive spill og
                                            indikasjon om ulest melding.


                                          • Profilbilde og navn på motstander
                                            på baksiden av tile, i tillegg til
                                            informasjon om siste trekk.
Sluttbrukere elsker Live Tiles



                       “Love this game! Awesome with the live tile.”


                       “Dejligt tidsfordriv spil og cool det kom lidt
                       tidligere end forventet. Udnytter live tiles godt”


                       “Fungerer perfekt, og udnyttelsen af 'live tile'
                       og 'notification' er lige i skabet.”

                       “Love it! It runs great, has a nice interface and
                       the live tile and push are excellent!”
Test tidlig
  & ofte
Wordfeud test og utvikling




   22. Nov         Daglige bygg     23. Des   08. Jan   14. Jan       22. Jan    30. Jan
Første commit    delt via Dropbox    Beta 1   Beta 2    Beta 3       Beta 4 & Lansering
                                                                    publisering
                                                                  som skjult app
Framtiden?
Oppsummering
Oppsummering – WP7 og Metro design




Karakteristikk                       Hvordan lykkes

Lett, font, typografi,               Ny struktur og presentasjon av
bevegelse/animasjon, fokus på        innhold og data
innhold og digitalt

                                     Klare oversette “hurtig,
Tiles – mer enn                      gjenvendende og praktisk” med
forventningsstyring                  “lek, underholdning og fryd for
                                     øyet”?

Teknisk implementasjon
                                     Pass på – totalfølelse og avveiing!

Test
                                     Utforsk og utfordre!

More Related Content

Similar to Hvordan lage en vellykket Windows Phone 7 App

Lecture on Interaction Design, Pt 3
Lecture on Interaction Design, Pt 3Lecture on Interaction Design, Pt 3
Lecture on Interaction Design, Pt 3Jon Skivenes
 
Mobiletech First Tuesday Bergen 10 mai 2011
Mobiletech First Tuesday Bergen 10 mai 2011Mobiletech First Tuesday Bergen 10 mai 2011
Mobiletech First Tuesday Bergen 10 mai 2011First Tuesday Bergen
 
Morgendagens arbeidsplass januar 2013
Morgendagens arbeidsplass januar 2013Morgendagens arbeidsplass januar 2013
Morgendagens arbeidsplass januar 2013Odd Gurvin
 
Gjesteforelesning - digital interaktiv design - KHIB
Gjesteforelesning - digital interaktiv design - KHIBGjesteforelesning - digital interaktiv design - KHIB
Gjesteforelesning - digital interaktiv design - KHIBKjartan Michalsen
 
Notifikasjoner i en asynkron verden
Notifikasjoner i en asynkron verdenNotifikasjoner i en asynkron verden
Notifikasjoner i en asynkron verdenJoar Øyen
 
Slik kan du prototype enkelt med node red
Slik kan du prototype enkelt med node redSlik kan du prototype enkelt med node red
Slik kan du prototype enkelt med node redSimen Sommerfeldt
 
Digital Skilting ved NTNU - Rapport fra pilot prosjekt
Digital Skilting ved NTNU - Rapport fra pilot prosjektDigital Skilting ved NTNU - Rapport fra pilot prosjekt
Digital Skilting ved NTNU - Rapport fra pilot prosjektNTNU Multimediesenteret
 
Brukeropplevelser Digitale Medier Joergen Dalen
Brukeropplevelser  Digitale  Medier  Joergen  DalenBrukeropplevelser  Digitale  Medier  Joergen  Dalen
Brukeropplevelser Digitale Medier Joergen DalenHalogen AS
 
GoOpen 2010: Jorgen Wahlberg
GoOpen 2010: Jorgen WahlbergGoOpen 2010: Jorgen Wahlberg
GoOpen 2010: Jorgen WahlbergFriprogsenteret
 
Responsivt webdesign
Responsivt webdesignResponsivt webdesign
Responsivt webdesignSolv AS
 
Intro til windows 8
Intro til windows 8Intro til windows 8
Intro til windows 8goeran
 
20140128 Firstpoint seminar - Tid For Oppgradering
20140128   Firstpoint seminar - Tid For Oppgradering20140128   Firstpoint seminar - Tid For Oppgradering
20140128 Firstpoint seminar - Tid For OppgraderingSturla Grelland
 
Lecture on Interaction Design, Pt 1
Lecture on Interaction Design, Pt 1Lecture on Interaction Design, Pt 1
Lecture on Interaction Design, Pt 1Jon Skivenes
 
20120919 digitalkonferansen hans petter aanby
20120919 digitalkonferansen hans petter aanby20120919 digitalkonferansen hans petter aanby
20120919 digitalkonferansen hans petter aanbyMeandmine2
 
20120919 digitalkonferansen hans petter aanby
20120919 digitalkonferansen hans petter aanby20120919 digitalkonferansen hans petter aanby
20120919 digitalkonferansen hans petter aanbyDigin
 
JavaZone 2006 - Gode grep når prosjektet blir stort
JavaZone 2006 -  Gode grep når prosjektet blir stortJavaZone 2006 -  Gode grep når prosjektet blir stort
JavaZone 2006 - Gode grep når prosjektet blir stortEirik Torske
 

Similar to Hvordan lage en vellykket Windows Phone 7 App (20)

Lecture on Interaction Design, Pt 3
Lecture on Interaction Design, Pt 3Lecture on Interaction Design, Pt 3
Lecture on Interaction Design, Pt 3
 
Mobiletech First Tuesday Bergen 10 mai 2011
Mobiletech First Tuesday Bergen 10 mai 2011Mobiletech First Tuesday Bergen 10 mai 2011
Mobiletech First Tuesday Bergen 10 mai 2011
 
Morgendagens arbeidsplass januar 2013
Morgendagens arbeidsplass januar 2013Morgendagens arbeidsplass januar 2013
Morgendagens arbeidsplass januar 2013
 
Gjesteforelesning - digital interaktiv design - KHIB
Gjesteforelesning - digital interaktiv design - KHIBGjesteforelesning - digital interaktiv design - KHIB
Gjesteforelesning - digital interaktiv design - KHIB
 
Notifikasjoner i en asynkron verden
Notifikasjoner i en asynkron verdenNotifikasjoner i en asynkron verden
Notifikasjoner i en asynkron verden
 
Slik kan du prototype enkelt med node red
Slik kan du prototype enkelt med node redSlik kan du prototype enkelt med node red
Slik kan du prototype enkelt med node red
 
Digital Skilting ved NTNU - Rapport fra pilot prosjekt
Digital Skilting ved NTNU - Rapport fra pilot prosjektDigital Skilting ved NTNU - Rapport fra pilot prosjekt
Digital Skilting ved NTNU - Rapport fra pilot prosjekt
 
Hvordan lage apper
Hvordan lage apperHvordan lage apper
Hvordan lage apper
 
Den mobile revolusjonen
Den mobile revolusjonenDen mobile revolusjonen
Den mobile revolusjonen
 
Brukeropplevelser Digitale Medier Joergen Dalen
Brukeropplevelser  Digitale  Medier  Joergen  DalenBrukeropplevelser  Digitale  Medier  Joergen  Dalen
Brukeropplevelser Digitale Medier Joergen Dalen
 
GoOpen 2010: Jorgen Wahlberg
GoOpen 2010: Jorgen WahlbergGoOpen 2010: Jorgen Wahlberg
GoOpen 2010: Jorgen Wahlberg
 
Responsivt webdesign
Responsivt webdesignResponsivt webdesign
Responsivt webdesign
 
Intro til windows 8
Intro til windows 8Intro til windows 8
Intro til windows 8
 
20140128 Firstpoint seminar - Tid For Oppgradering
20140128   Firstpoint seminar - Tid For Oppgradering20140128   Firstpoint seminar - Tid For Oppgradering
20140128 Firstpoint seminar - Tid For Oppgradering
 
Lecture on Interaction Design, Pt 1
Lecture on Interaction Design, Pt 1Lecture on Interaction Design, Pt 1
Lecture on Interaction Design, Pt 1
 
20120919 digitalkonferansen hans petter aanby
20120919 digitalkonferansen hans petter aanby20120919 digitalkonferansen hans petter aanby
20120919 digitalkonferansen hans petter aanby
 
20120919 digitalkonferansen hans petter aanby
20120919 digitalkonferansen hans petter aanby20120919 digitalkonferansen hans petter aanby
20120919 digitalkonferansen hans petter aanby
 
Mobilism
MobilismMobilism
Mobilism
 
Hybrid-applikasjoner
Hybrid-applikasjonerHybrid-applikasjoner
Hybrid-applikasjoner
 
JavaZone 2006 - Gode grep når prosjektet blir stort
JavaZone 2006 -  Gode grep når prosjektet blir stortJavaZone 2006 -  Gode grep når prosjektet blir stort
JavaZone 2006 - Gode grep når prosjektet blir stort
 

More from Jonas Follesø

Cross platform mobile apps using .NET
Cross platform mobile apps using .NETCross platform mobile apps using .NET
Cross platform mobile apps using .NETJonas Follesø
 
Windows Phone 7 lyntale fra Grensesnittet Desember 2010
Windows Phone 7 lyntale fra Grensesnittet Desember 2010Windows Phone 7 lyntale fra Grensesnittet Desember 2010
Windows Phone 7 lyntale fra Grensesnittet Desember 2010Jonas Follesø
 
NNUG Trondheim 30.09.2010 - Windows Phone 7
NNUG Trondheim 30.09.2010 -  Windows Phone 7NNUG Trondheim 30.09.2010 -  Windows Phone 7
NNUG Trondheim 30.09.2010 - Windows Phone 7Jonas Follesø
 
Generating characterization tests for legacy code
Generating characterization tests for legacy codeGenerating characterization tests for legacy code
Generating characterization tests for legacy codeJonas Follesø
 
MVVM Design Pattern NDC2009
MVVM Design Pattern NDC2009MVVM Design Pattern NDC2009
MVVM Design Pattern NDC2009Jonas Follesø
 
Silverlight 2 for Developers - TechEd New Zealand 2008
Silverlight 2 for Developers - TechEd New Zealand 2008Silverlight 2 for Developers - TechEd New Zealand 2008
Silverlight 2 for Developers - TechEd New Zealand 2008Jonas Follesø
 

More from Jonas Follesø (7)

Introduction to F#
Introduction to F#Introduction to F#
Introduction to F#
 
Cross platform mobile apps using .NET
Cross platform mobile apps using .NETCross platform mobile apps using .NET
Cross platform mobile apps using .NET
 
Windows Phone 7 lyntale fra Grensesnittet Desember 2010
Windows Phone 7 lyntale fra Grensesnittet Desember 2010Windows Phone 7 lyntale fra Grensesnittet Desember 2010
Windows Phone 7 lyntale fra Grensesnittet Desember 2010
 
NNUG Trondheim 30.09.2010 - Windows Phone 7
NNUG Trondheim 30.09.2010 -  Windows Phone 7NNUG Trondheim 30.09.2010 -  Windows Phone 7
NNUG Trondheim 30.09.2010 - Windows Phone 7
 
Generating characterization tests for legacy code
Generating characterization tests for legacy codeGenerating characterization tests for legacy code
Generating characterization tests for legacy code
 
MVVM Design Pattern NDC2009
MVVM Design Pattern NDC2009MVVM Design Pattern NDC2009
MVVM Design Pattern NDC2009
 
Silverlight 2 for Developers - TechEd New Zealand 2008
Silverlight 2 for Developers - TechEd New Zealand 2008Silverlight 2 for Developers - TechEd New Zealand 2008
Silverlight 2 for Developers - TechEd New Zealand 2008
 

Hvordan lage en vellykket Windows Phone 7 App

  • 1. Hvordan lage en vellykket Windows Phone 7 APP Erfaringer fra 7 forskjellige apps utviklet høsten 2011 og vinteren 2012 Mobile Meetup Oslo Jonas Follesø & Dan Robert Ekrem 28/03/2012
  • 2. Om oss Jonas Follesø Scientist & Manager BEKK Trondheim Microsoft MVP Silverlight Dan Robert Ekrem UX Designer, BEKK Oslo Metro 8 Trainer
  • 3. agenda Bakgrunn Metro Design Språk Implementering av Metro Tiles, testing og publisering Spørsmål
  • 5.
  • 6. Apps vi har jobbet med
  • 7. Sluttbrukere liker Metro “Nyttig applikasjon, fint utseende også med Metro.” “Fungerer svært bra og ser delikat ut.” “Meget ambisiøs og vel gjennomført app. Innholder alle tenkbare features og alt er pent og føles skikkelig solid.” “Bra design. Oversiktlig app som gir rask tilgang til de viktigste banktjenestene. Farvel til telefonbank :-D”
  • 9. Prinsipper vs Språk The Metro Design The Metro Design Principles Language the pillars (usually abstract set of concrete user concepts) that guide the interaction, visual design, creation of experiences for motion and application flow Windows Phone. elements and rules.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 26.
  • 27.
  • 28.
  • 30. C# SOM SPRÅK, XNA FOR GAMES, SILVERLIGHT FOR APPS
  • 31. RIKTIG VERKTØY – BLEND + VISUAL STUDIO
  • 32. TILGANG TIL ALLE API’ENE VI TRENGTE • Tilgang til adressebok (SpareBank 1 Venneregnskap, Wordfeud) • SMS (SpareBank 1 Venneregnskap) • Lokasjon (Telenor Utland, Posten Sporing) • Push Notifications (Wordfeud) • Kamera (VG Snarvei, Wordfeud) • SQLite Database (Posten Sporing) • ... Og alt av «basis» funksjonalitet som nettverk, web tjenester, filaksess osv.
  • 34. 3 Måter å implementere Live Tiles 1. Secondary Tiles 2. Live Tiles using Background Agents 3. Live Tiles using Push Notifications
  • 35. 3 ways to implement live tiles 1. Secondary Tiles 2. Live Tiles using Background Agents 3. Live Tiles using Push Notifications
  • 36. Live Tiles 1 – Secondary Tiles • Mulig for en app å ha flere tiles på startskjermen. • Kan lenke til et bestemt område i appen. • Kan oppdateres programatisk til å vise ny informasjon.
  • 37. Live Tiles 1 – Secondary Tiles • Mulig å dynamisk generere grafikken til tile på telefonen.
  • 38. 3 ways to implement live tiles 1. Secondary Tiles 2. Live Tiles using Background Agents 3. Live Tiles using Push Notifications
  • 39. Live Tiles 2 – Updating Tiles using Background Agents • Mulig å oppdatere både primær og sekundær tile fra kode. • Kan bruke en Background Agent til å oppdatere en Live Tile.
  • 40. Background Agents app logic agent instance 6 MB minne 25 sekunder kjøretid app logic UI instance
  • 41. Live Tiles 2 – Updating Tiles using Background Agents • Kan og oppdatere sekundær tiles fra bakgrunnsagent.
  • 42. 3 ways to implement live tiles 1. Secondary Tiles 2. Live Tiles using Background Agents 3. Live Tiles using Push Notifications
  • 43. WP7 PUSH NOTIFIC Your WP Applicatio n 2 Hand off chan ATIONS Your n el U Web RL Appli catio n Push Library 4 Push Pu 3mess PUSH 1 mes sh O s age CLIENT Ch pe ag e an n Micro l ne soft Push Notifi catio n Servi ces
  • 44. Tile Notification Payload <?xml version="1.0" encoding="utf-8"?> <wp:Notification xmlns:wp="WPNotification"> <wp:Tile> <wp:BackgroundImage>Background.jpg</wp:BackgroundImage> <wp:Count>3</wp:Count> <wp:Title>Title</wp:Title> <wp:BackBackgroundImage>BackBackground.jpg</wp:BackBackgroundImage> <wp:BackTitle>Back Title</wp:BackTitle> <wp:BackContent>Back Content</wp:BackContent> </wp:Tile> </wp:Notification> • XML pushes til telefonen for å oppdatere Tile. • Støtte for både eksterne og lokale URL-er for bilder.
  • 45. Live Tiles 3 – Using Push Notifications • Standard tile. • Tile med antall aktive spill og indikasjon om ulest melding. • Profilbilde og navn på motstander på baksiden av tile, i tillegg til informasjon om siste trekk.
  • 46. Sluttbrukere elsker Live Tiles “Love this game! Awesome with the live tile.” “Dejligt tidsfordriv spil og cool det kom lidt tidligere end forventet. Udnytter live tiles godt” “Fungerer perfekt, og udnyttelsen af 'live tile' og 'notification' er lige i skabet.” “Love it! It runs great, has a nice interface and the live tile and push are excellent!”
  • 47. Test tidlig & ofte
  • 48. Wordfeud test og utvikling 22. Nov Daglige bygg 23. Des 08. Jan 14. Jan 22. Jan 30. Jan Første commit delt via Dropbox Beta 1 Beta 2 Beta 3 Beta 4 & Lansering publisering som skjult app
  • 50.
  • 51.
  • 52.
  • 54. Oppsummering – WP7 og Metro design Karakteristikk Hvordan lykkes Lett, font, typografi, Ny struktur og presentasjon av bevegelse/animasjon, fokus på innhold og data innhold og digitalt Klare oversette “hurtig, Tiles – mer enn gjenvendende og praktisk” med forventningsstyring “lek, underholdning og fryd for øyet”? Teknisk implementasjon Pass på – totalfølelse og avveiing! Test Utforsk og utfordre!

Editor's Notes

  1. SpareBank 1 Mobilbank Posten Pakkesporing Wordfeud VG Snarvei Telenor Utland Telenor Faktura Avinor Flytider