SlideShare une entreprise Scribd logo
1  sur  31
Télécharger pour lire hors ligne
LE BASI PER LO SVILUPPO
SU WINDOWS PHONE 8
Matteo Pagani
Nokia Developer Champion
Microsoft MVP – Windows Phone Development
Software Engineer @ Funambol
ITALIAN WEBINAR #1
AGENDA
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
• I concetti base di Windows Phone
• I linguaggi e il Windows Runtime
• I tool di sviluppo
• Creiamo il nostro primo progetto
WINDOWS
PHONE 8
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
• Basata sul Microsoft Design Style, stile grafico di Microsoft adottato per la
maggior parte dei suoi prodotti (Windows 8, Xbox, ecc.)
• Caratterizzata dal flat design: gli abbellimenti grafici sono ridotti
all’essenziale.
• I contenuti al centro: maggiore importanza data al contenuto stesso
rispetto alla presentazione.
• Alcuni concetti chiave: live tile, panorama, pivot, application bar.
INTERFACCIA GRAFICA
9/3/2013© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
LIVE TILE
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
PANORAMA
9/3/2013© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
PIVOT
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
APPLICATION BAR
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
HARDWARE
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
• Processore dual core da 1 GHz
• 512 MB di RAM
• 4 GB di storage (Lumia: minimo 8 GB)
• Tre risoluzioni supportate: 480x800, 768x1280, 720x1280
• Fotocamera (frontaleopzionale)
• GPS, accelerometro, Wi-Fi, bussola
• Opzionali: giroscopio
CARATTERISTICHE MINIME
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
LO SVILUPPO
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
• Runtimedi nuova generazioneper gli sviluppatori, introdotto in Windows 8 e
in Windows Phone 8
• API pensate per dispositivi di nuova generazione
• API in codice nativo: accesso diretto alla hardware e ottime performance
• Linguaggi supportati:
• C# / XAML
• VB.NET / XAML
• C++ / DirectX
WINDOWS RUNTIME
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
• Subset del Windows Runtime originaledi Windows 8
• Diverse API (storage, sensori, NFC, GPS, ecc.) in comune
• Non offre supporto nativo ad HTML / JS (ma è possibile usare il controllo
WebBrowser e framework come PhoneGap)
• Alcune differenze rispetto all’originale, per via di alcuni scenari d’uso
differenti (esempio, no API per la stampa, API per l’interazionecon gli hub
Photos e Music)
WINDOWS RUNTIME FOR WINDOWS
PHONE
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
• Quirk mode
• Le applicazioni Windows Phone 7.x sono in grado di funzionare su
Windows Phone 8 senza modifiche, grazie ad un mapping automatico
tra le vecchie e le nuove API
• .NET API for Windows Phone
• Implementazione delle API di Windows Phone 7.x, così da non dover
riscrivere l’applicazione se si vuole aggiornare a Windows Phone 8
RETRO COMPATIBILITÀ CON
WINDOWS PHONE 7.X
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
• Linguaggio di markup basato su XML
• Nasce con WPF, viene poi adottato in Silverlight e ora è alla base delle
tecnologie client Microsoft
• Analogo ad HTML come concezione
• Ogni tag rappresenta un controllo posizionabilenella pagina (TextBox,
Button, TextBlock, ProgressBar, ecc.)
• La struttura è gerarchica: è possibile inserire tag all’interno di altri nodi
XAML
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
DEVELOPER
EXPERIENCE
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
• Completamente gratuiti e scaricabili dal sito http://dev.windowsphone.com
• Visual Studio 2012 + Blend for Windows Phone
• Requisiti:
• Windows 8 Pro o Enterprise a 64 bit
• Processo con supporto SLAT per emulatore (i3, i5, i7)
• Emulatorebasato su Hyper-V, con supporto all’hardware del computer
(touch screen, microfono, ecc.) e con tool per il testing (GPS, accelerometro,
ecc.)
TOOL
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
• Portale per la pubblicazione e la gestione delle proprie applicazioni sullo
Store
• Costo di iscrizione:19 $ all’anno
• Possibilità di pubblicareun numero illimitato di applicazioni a pagamento e
100 gratuite
• Sblocco del telefono per lo sviluppo:
• 1 telefono e 2 app: gratuito
• 3 telefoni e 10 app: richiesta iscrizione allo Store
DEV CENTER
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
• Costo di 79 €
• Include:
• 1 token per registrazione allo Store
• 1 licenza per i controlli di Telerik per Windows Phone
• 100 milioni di chiamate al mese verso i servizi di Buddy API
• 2 ticket di supporto Nokia
NOKIA DEVELOPER PREMIUM
PROGRAM
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
• Unico punto di distribuzione delle applicazioni (scenari enterprise esclusi)
• Processo di certificazione della durata massima di 5 giorni lavorativi che
verifica:
• Qualità tecnica dell’applicazione (crash, UI confusionaria, gravi bug)
• Contenuti (vietata pornografia, violenza eccessiva, razzismo, ecc.)
• Possibilità di distribuire le applicazioni in beta: nessun processo di
certificazione,3 mesi di vita, massimo 10.000 utenti
STORE
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
IL PRIMO
PROGETTO
Demo
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
ALCUNI
CONCETTI
CHIAVE
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
• Nel mondo di oggi il concetto di «asincrono» e «multi threading» sono
sempre più importanti
• L’esecuzionedi un’operazionenon deve bloccare l’interfaccia utente e
rende l’applicazione inutilizzabile
• Async e await sono due parole chiave aggiunte in C# 5.0 che semplificano
questi scenari
OPERAZIONI ASINCRONE
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
CALLBACK
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
WebClient client = new WebClient();
client.DownloadStringCompleted += client_DownloadStringCompleted;
client.DownloadStringAsync(new Uri("http://www.qmatteoq.com",
UriKind.Absolute));
MessageBox.Show("Download avviato");
void client_DownloadStringCompleted(object sender,
DownloadStringCompletedEventArgs e)
{
MessageBox.Show(e.Result);
MessageBox.Show("Download terminato");
}
ASYNC E AWAIT
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
public async Task<string>()
{
HttpClient client = new HttpClient();
MessageBox.Show("Download iniziato");
string result = await
client.GetStringAsync("http://www.qmatteoq.com");
MessageBox.Show(result);
MessageBox.Show("Download terminato");
}
• Tool integrato in Visual Studio per installare librerie di terze parti in un
progetto
• Semplifica e automatizza il processo di installazionee configurazione
• Alcune librerie importanti per Windows Phone:
• Async pack for .NET
• HttpClient
NUGET
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
UN RSS
READER
Demo
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
RISORSE PER
LO SVILUPPO
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
• Dev Center: http://dev.windowsphone.com
• Nokia Developer: http://developer.nokia.com
• MSDN http://msdn.microsoft.com/it-IT/
• «Sviluppareapplicazioni per Windows Phone 8» edito da Edizioni FAG Milano
• Facebook https://www.facebook.com/groups/SviluppatoriNokiaItalia/
• Materiale su http://sdrv.ms/17dd0Ch
RISORSE UTILI
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
• Un programma di Nokia appena inaugurato in Italia
• Propone ogni settimana sfide legate allo sviluppo di applicazioni Windows
Phone, che fanno accumulare punti XP:
• Nuove applicazioni e giochi con determinate caratteristiche
• Aggiornamento di applicazioni esistenti con nuove feature
• Qualità (numero di recensioni positive)
• I punti XP possono essere utilizzati per ottenere premi (in arrivo nelle
prossime settimane)
DVLUP
© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
9/3/2013© 2012 Nokia. All rights reserved.
© 2012 Microsoft. All rights reserved.
Grazie!
Blog:
http://www.qmatteoq.com
http://wp.qmatteoq.com
Twitter: @qmatteoq
Mail: info@qmatteoq.com

Contenu connexe

En vedette

Nokia Asha UI Clinic: November 2013 — Jumping Man and Sky Sudoku
Nokia Asha UI Clinic: November 2013 — Jumping Man and Sky SudokuNokia Asha UI Clinic: November 2013 — Jumping Man and Sky Sudoku
Nokia Asha UI Clinic: November 2013 — Jumping Man and Sky SudokuMicrosoft Mobile Developer
 
Nokia Asha UX webinar: Design tips for Nokia Asha game developers
Nokia Asha UX webinar: Design tips for Nokia Asha game developersNokia Asha UX webinar: Design tips for Nokia Asha game developers
Nokia Asha UX webinar: Design tips for Nokia Asha game developersMicrosoft Mobile Developer
 
Deep dive into Nokia Asha UI design: Designing apps
Deep dive into Nokia Asha UI design: Designing appsDeep dive into Nokia Asha UI design: Designing apps
Deep dive into Nokia Asha UI design: Designing appsMicrosoft Mobile Developer
 
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultationsLumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultationsMicrosoft Mobile Developer
 
Nokia Asha UI Clinic: October 2013 — Kids Choice and Photogram
Nokia Asha UI Clinic: October 2013 — Kids Choice and PhotogramNokia Asha UI Clinic: October 2013 — Kids Choice and Photogram
Nokia Asha UI Clinic: October 2013 — Kids Choice and PhotogramMicrosoft Mobile Developer
 
Nokia Asha webinar: Add VoIP services to your Nokia Asha apps
Nokia Asha webinar: Add VoIP services to your Nokia Asha appsNokia Asha webinar: Add VoIP services to your Nokia Asha apps
Nokia Asha webinar: Add VoIP services to your Nokia Asha appsMicrosoft Mobile Developer
 
Introduction to Nokia Asha software platform 1.0
Introduction to Nokia Asha software platform 1.0Introduction to Nokia Asha software platform 1.0
Introduction to Nokia Asha software platform 1.0Microsoft Mobile Developer
 
Deep dive into Nokia Asha UI design: Fundamentals
Deep dive into Nokia Asha UI design: FundamentalsDeep dive into Nokia Asha UI design: Fundamentals
Deep dive into Nokia Asha UI design: FundamentalsMicrosoft Mobile Developer
 
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...Microsoft Mobile Developer
 
Nokia Asha webinar: Developing health-care applications for Nokia Asha phones
Nokia Asha webinar: Developing health-care applications for Nokia Asha phonesNokia Asha webinar: Developing health-care applications for Nokia Asha phones
Nokia Asha webinar: Developing health-care applications for Nokia Asha phonesMicrosoft Mobile Developer
 
Intro to Nokia X software platform 2.0 and tools
Intro to Nokia X software platform 2.0 and toolsIntro to Nokia X software platform 2.0 and tools
Intro to Nokia X software platform 2.0 and toolsMicrosoft Mobile Developer
 

En vedette (16)

Lumia App Labs: Lumia SensorCore SDK beta
Lumia App Labs: Lumia SensorCore SDK betaLumia App Labs: Lumia SensorCore SDK beta
Lumia App Labs: Lumia SensorCore SDK beta
 
Nokia Asha from idea to app - Imaging
Nokia Asha from idea to app - ImagingNokia Asha from idea to app - Imaging
Nokia Asha from idea to app - Imaging
 
Nokia Asha UI Clinic: November 2013 — Jumping Man and Sky Sudoku
Nokia Asha UI Clinic: November 2013 — Jumping Man and Sky SudokuNokia Asha UI Clinic: November 2013 — Jumping Man and Sky Sudoku
Nokia Asha UI Clinic: November 2013 — Jumping Man and Sky Sudoku
 
Nokia Asha UX webinar: Design tips for Nokia Asha game developers
Nokia Asha UX webinar: Design tips for Nokia Asha game developersNokia Asha UX webinar: Design tips for Nokia Asha game developers
Nokia Asha UX webinar: Design tips for Nokia Asha game developers
 
Deep dive into Nokia Asha UI design: Designing apps
Deep dive into Nokia Asha UI design: Designing appsDeep dive into Nokia Asha UI design: Designing apps
Deep dive into Nokia Asha UI design: Designing apps
 
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultationsLumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
 
Nokia Asha UI Clinic: October 2013 — Kids Choice and Photogram
Nokia Asha UI Clinic: October 2013 — Kids Choice and PhotogramNokia Asha UI Clinic: October 2013 — Kids Choice and Photogram
Nokia Asha UI Clinic: October 2013 — Kids Choice and Photogram
 
Nokia Asha webinar: Add VoIP services to your Nokia Asha apps
Nokia Asha webinar: Add VoIP services to your Nokia Asha appsNokia Asha webinar: Add VoIP services to your Nokia Asha apps
Nokia Asha webinar: Add VoIP services to your Nokia Asha apps
 
Introduction to Nokia Asha SDK 1.2 (beta)
Introduction to Nokia Asha SDK 1.2 (beta)Introduction to Nokia Asha SDK 1.2 (beta)
Introduction to Nokia Asha SDK 1.2 (beta)
 
DIY Nokia Asha app usability studies
DIY Nokia Asha app usability studiesDIY Nokia Asha app usability studies
DIY Nokia Asha app usability studies
 
Introducao a nova plataforma nokia asha
Introducao a nova plataforma nokia ashaIntroducao a nova plataforma nokia asha
Introducao a nova plataforma nokia asha
 
Introduction to Nokia Asha software platform 1.0
Introduction to Nokia Asha software platform 1.0Introduction to Nokia Asha software platform 1.0
Introduction to Nokia Asha software platform 1.0
 
Deep dive into Nokia Asha UI design: Fundamentals
Deep dive into Nokia Asha UI design: FundamentalsDeep dive into Nokia Asha UI design: Fundamentals
Deep dive into Nokia Asha UI design: Fundamentals
 
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
Nokia Asha webinar: Developing location-based services for Nokia Asha phones ...
 
Nokia Asha webinar: Developing health-care applications for Nokia Asha phones
Nokia Asha webinar: Developing health-care applications for Nokia Asha phonesNokia Asha webinar: Developing health-care applications for Nokia Asha phones
Nokia Asha webinar: Developing health-care applications for Nokia Asha phones
 
Intro to Nokia X software platform 2.0 and tools
Intro to Nokia X software platform 2.0 and toolsIntro to Nokia X software platform 2.0 and tools
Intro to Nokia X software platform 2.0 and tools
 

Similaire à Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progetto

Sviluppo di applicazioni mobile con PhoneGap
Sviluppo di applicazioni mobile con PhoneGapSviluppo di applicazioni mobile con PhoneGap
Sviluppo di applicazioni mobile con PhoneGapDotNetMarche
 
Sviluppare una app mobile net oriented
Sviluppare una app mobile net orientedSviluppare una app mobile net oriented
Sviluppare una app mobile net orientedAlessandro Morvillo
 
Mobile Development: una introduzione per Web Developers
Mobile Development: una introduzione per Web DevelopersMobile Development: una introduzione per Web Developers
Mobile Development: una introduzione per Web Developerssparkfabrik
 
GWT Development for Handheld Devices
GWT Development for Handheld DevicesGWT Development for Handheld Devices
GWT Development for Handheld DevicesGWTcon
 
Mobile platforms development overview
Mobile platforms development overviewMobile platforms development overview
Mobile platforms development overviewAlfredo Morresi
 
Introduzione alle Universal App
Introduzione alle Universal AppIntroduzione alle Universal App
Introduzione alle Universal AppAlessio Iafrate
 
Creare un’APP di successo, pubblicizzarla, monetizzare. Speaker: Luciano Blan...
Creare un’APP di successo, pubblicizzarla, monetizzare. Speaker: Luciano Blan...Creare un’APP di successo, pubblicizzarla, monetizzare. Speaker: Luciano Blan...
Creare un’APP di successo, pubblicizzarla, monetizzare. Speaker: Luciano Blan...Luciano Blancato
 
.NET & Linux: la strana coppia - DotNetDay 2018
.NET & Linux: la strana coppia - DotNetDay 2018.NET & Linux: la strana coppia - DotNetDay 2018
.NET & Linux: la strana coppia - DotNetDay 2018Fabrizio Bernabei
 
C# Mobile application architecture
C# Mobile application architectureC# Mobile application architecture
C# Mobile application architectureLeonardo Alario
 
Google Android: una nuova piattaforma Open Source per dispositivi mobili
Google Android: una nuova piattaforma Open Source per dispositivi mobiliGoogle Android: una nuova piattaforma Open Source per dispositivi mobili
Google Android: una nuova piattaforma Open Source per dispositivi mobiliGoWireless
 
Writing apps for android with .net
Writing apps for android with .net Writing apps for android with .net
Writing apps for android with .net Leonardo Alario
 
Touch&play framework
Touch&play frameworkTouch&play framework
Touch&play frameworkCSP Scarl
 
Flutter: Google alla conquista del mobile multi piattaforma
Flutter: Google alla conquista del mobile multi piattaformaFlutter: Google alla conquista del mobile multi piattaforma
Flutter: Google alla conquista del mobile multi piattaformaCommit University
 
MobileDevCamp2012 - Android
MobileDevCamp2012 - AndroidMobileDevCamp2012 - Android
MobileDevCamp2012 - Androidmobiledevcamp
 

Similaire à Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progetto (20)

Sviluppo di applicazioni mobile con PhoneGap
Sviluppo di applicazioni mobile con PhoneGapSviluppo di applicazioni mobile con PhoneGap
Sviluppo di applicazioni mobile con PhoneGap
 
Sviluppare una app mobile net oriented
Sviluppare una app mobile net orientedSviluppare una app mobile net oriented
Sviluppare una app mobile net oriented
 
Mobile Development: una introduzione per Web Developers
Mobile Development: una introduzione per Web DevelopersMobile Development: una introduzione per Web Developers
Mobile Development: una introduzione per Web Developers
 
GWT Development for Handheld Devices
GWT Development for Handheld DevicesGWT Development for Handheld Devices
GWT Development for Handheld Devices
 
Mobile e Smart Client
Mobile e Smart ClientMobile e Smart Client
Mobile e Smart Client
 
Mobile platforms development overview
Mobile platforms development overviewMobile platforms development overview
Mobile platforms development overview
 
Android Workshop
Android WorkshopAndroid Workshop
Android Workshop
 
Introduzione alle Universal App
Introduzione alle Universal AppIntroduzione alle Universal App
Introduzione alle Universal App
 
INTRO TO XAMARIN
INTRO TO XAMARININTRO TO XAMARIN
INTRO TO XAMARIN
 
Creare un’APP di successo, pubblicizzarla, monetizzare. Speaker: Luciano Blan...
Creare un’APP di successo, pubblicizzarla, monetizzare. Speaker: Luciano Blan...Creare un’APP di successo, pubblicizzarla, monetizzare. Speaker: Luciano Blan...
Creare un’APP di successo, pubblicizzarla, monetizzare. Speaker: Luciano Blan...
 
Sviluppare applicazioni Domino Web per dispositivi Mobili
Sviluppare applicazioni Domino Web per dispositivi MobiliSviluppare applicazioni Domino Web per dispositivi Mobili
Sviluppare applicazioni Domino Web per dispositivi Mobili
 
platforms
platformsplatforms
platforms
 
.NET & Linux: la strana coppia - DotNetDay 2018
.NET & Linux: la strana coppia - DotNetDay 2018.NET & Linux: la strana coppia - DotNetDay 2018
.NET & Linux: la strana coppia - DotNetDay 2018
 
C# Mobile application architecture
C# Mobile application architectureC# Mobile application architecture
C# Mobile application architecture
 
Google Android: una nuova piattaforma Open Source per dispositivi mobili
Google Android: una nuova piattaforma Open Source per dispositivi mobiliGoogle Android: una nuova piattaforma Open Source per dispositivi mobili
Google Android: una nuova piattaforma Open Source per dispositivi mobili
 
Android
AndroidAndroid
Android
 
Writing apps for android with .net
Writing apps for android with .net Writing apps for android with .net
Writing apps for android with .net
 
Touch&play framework
Touch&play frameworkTouch&play framework
Touch&play framework
 
Flutter: Google alla conquista del mobile multi piattaforma
Flutter: Google alla conquista del mobile multi piattaformaFlutter: Google alla conquista del mobile multi piattaforma
Flutter: Google alla conquista del mobile multi piattaforma
 
MobileDevCamp2012 - Android
MobileDevCamp2012 - AndroidMobileDevCamp2012 - Android
MobileDevCamp2012 - Android
 

Plus de Microsoft Mobile Developer

Location based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tagLocation based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tagMicrosoft Mobile Developer
 
Windows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra appWindows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra appMicrosoft Mobile Developer
 
La pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo storeLa pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo storeMicrosoft Mobile Developer
 
Lens app trasformare il telefono in una fotocamera
Lens app trasformare il telefono in una fotocameraLens app trasformare il telefono in una fotocamera
Lens app trasformare il telefono in una fotocameraMicrosoft Mobile Developer
 
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0Microsoft Mobile Developer
 
Sviluppare una live app notifiche, live tile, lock screen
Sviluppare una live app notifiche, live tile, lock screenSviluppare una live app notifiche, live tile, lock screen
Sviluppare una live app notifiche, live tile, lock screenMicrosoft Mobile Developer
 

Plus de Microsoft Mobile Developer (17)

Healthcare apps for Nokia X and Nokia Asha
Healthcare apps for Nokia X and Nokia AshaHealthcare apps for Nokia X and Nokia Asha
Healthcare apps for Nokia X and Nokia Asha
 
Lessons learned from Nokia X UI reviews
Lessons learned from Nokia X UI reviewsLessons learned from Nokia X UI reviews
Lessons learned from Nokia X UI reviews
 
Location based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tagLocation based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tag
 
HERE Maps for the Nokia X platform
HERE Maps for the Nokia X platformHERE Maps for the Nokia X platform
HERE Maps for the Nokia X platform
 
Nokia In-App Payment - UX considerations
Nokia In-App Payment - UX considerationsNokia In-App Payment - UX considerations
Nokia In-App Payment - UX considerations
 
UX considerations when porting to Nokia X
UX considerations when porting to Nokia XUX considerations when porting to Nokia X
UX considerations when porting to Nokia X
 
Kids' games and educational app design
Kids' games and educational app designKids' games and educational app design
Kids' games and educational app design
 
Nokia X: opportunities for developers
Nokia X: opportunities for developersNokia X: opportunities for developers
Nokia X: opportunities for developers
 
Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1
 
Intro to Nokia X software platform and tools
Intro to Nokia X software platform and toolsIntro to Nokia X software platform and tools
Intro to Nokia X software platform and tools
 
Windows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra appWindows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra app
 
La pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo storeLa pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo store
 
Lens app trasformare il telefono in una fotocamera
Lens app trasformare il telefono in una fotocameraLens app trasformare il telefono in una fotocamera
Lens app trasformare il telefono in una fotocamera
 
NFC, Bluetooth e comunicazione tra app
NFC, Bluetooth e comunicazione tra appNFC, Bluetooth e comunicazione tra app
NFC, Bluetooth e comunicazione tra app
 
Connettersi al Cloud Azure Mobile Services
Connettersi al Cloud Azure Mobile ServicesConnettersi al Cloud Azure Mobile Services
Connettersi al Cloud Azure Mobile Services
 
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
 
Sviluppare una live app notifiche, live tile, lock screen
Sviluppare una live app notifiche, live tile, lock screenSviluppare una live app notifiche, live tile, lock screen
Sviluppare una live app notifiche, live tile, lock screen
 

Dernier

Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...
Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...
Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...Associazione Digital Days
 
Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...
Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...
Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...Associazione Digital Days
 
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...Associazione Digital Days
 
Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...
Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...
Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...Associazione Digital Days
 
Programma Biennale Tecnologia 2024 Torino
Programma Biennale Tecnologia 2024 TorinoProgramma Biennale Tecnologia 2024 Torino
Programma Biennale Tecnologia 2024 TorinoQuotidiano Piemontese
 
Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...
Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...
Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...Associazione Digital Days
 
Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”
Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”
Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”Associazione Digital Days
 
Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...
Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...
Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...Associazione Digital Days
 
Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...
Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...
Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...Associazione Digital Days
 

Dernier (9)

Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...
Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...
Daniele Lunassi, CEO & Head of Design @Eye Studios – “Creare prodotti e servi...
 
Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...
Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...
Luigi Di Carlo, CEO & Founder @Evometrika srl – “Ruolo della computer vision ...
 
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...
Mael Chiabrera, Software Developer; Viola Bongini, Digital Experience Designe...
 
Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...
Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...
Gabriele Mittica, CEO @Corley Cloud – “Come creare un’azienda “nativa in clou...
 
Programma Biennale Tecnologia 2024 Torino
Programma Biennale Tecnologia 2024 TorinoProgramma Biennale Tecnologia 2024 Torino
Programma Biennale Tecnologia 2024 Torino
 
Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...
Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...
Alessandro Nasi, COO @Djungle Studio – “Cosa delegheresti alla copia di te st...
 
Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”
Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”
Edoardo Di Pietro – “Virtual Influencer vs Umano: Rubiamo il lavoro all’AI”
 
Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...
Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...
Alessio Mazzotti, Aaron Brancotti; Writer, Screenwriter, Director, UX, Autore...
 
Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...
Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...
Federico Bottino, Lead Venture Builder – “Riflessioni sull’Innovazione: La Cu...
 

Le basi per lo sviluppo su Windows Phone tool, SDK, il primo progetto

  • 1. LE BASI PER LO SVILUPPO SU WINDOWS PHONE 8 Matteo Pagani Nokia Developer Champion Microsoft MVP – Windows Phone Development Software Engineer @ Funambol ITALIAN WEBINAR #1
  • 2. AGENDA © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved. • I concetti base di Windows Phone • I linguaggi e il Windows Runtime • I tool di sviluppo • Creiamo il nostro primo progetto
  • 3. WINDOWS PHONE 8 © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 4. • Basata sul Microsoft Design Style, stile grafico di Microsoft adottato per la maggior parte dei suoi prodotti (Windows 8, Xbox, ecc.) • Caratterizzata dal flat design: gli abbellimenti grafici sono ridotti all’essenziale. • I contenuti al centro: maggiore importanza data al contenuto stesso rispetto alla presentazione. • Alcuni concetti chiave: live tile, panorama, pivot, application bar. INTERFACCIA GRAFICA 9/3/2013© 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 5. LIVE TILE © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 6. PANORAMA 9/3/2013© 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 7. PIVOT © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 8. APPLICATION BAR © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 9. HARDWARE © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 10. • Processore dual core da 1 GHz • 512 MB di RAM • 4 GB di storage (Lumia: minimo 8 GB) • Tre risoluzioni supportate: 480x800, 768x1280, 720x1280 • Fotocamera (frontaleopzionale) • GPS, accelerometro, Wi-Fi, bussola • Opzionali: giroscopio CARATTERISTICHE MINIME © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 11. LO SVILUPPO © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 12. • Runtimedi nuova generazioneper gli sviluppatori, introdotto in Windows 8 e in Windows Phone 8 • API pensate per dispositivi di nuova generazione • API in codice nativo: accesso diretto alla hardware e ottime performance • Linguaggi supportati: • C# / XAML • VB.NET / XAML • C++ / DirectX WINDOWS RUNTIME © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 13. • Subset del Windows Runtime originaledi Windows 8 • Diverse API (storage, sensori, NFC, GPS, ecc.) in comune • Non offre supporto nativo ad HTML / JS (ma è possibile usare il controllo WebBrowser e framework come PhoneGap) • Alcune differenze rispetto all’originale, per via di alcuni scenari d’uso differenti (esempio, no API per la stampa, API per l’interazionecon gli hub Photos e Music) WINDOWS RUNTIME FOR WINDOWS PHONE © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 14. • Quirk mode • Le applicazioni Windows Phone 7.x sono in grado di funzionare su Windows Phone 8 senza modifiche, grazie ad un mapping automatico tra le vecchie e le nuove API • .NET API for Windows Phone • Implementazione delle API di Windows Phone 7.x, così da non dover riscrivere l’applicazione se si vuole aggiornare a Windows Phone 8 RETRO COMPATIBILITÀ CON WINDOWS PHONE 7.X © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 15. • Linguaggio di markup basato su XML • Nasce con WPF, viene poi adottato in Silverlight e ora è alla base delle tecnologie client Microsoft • Analogo ad HTML come concezione • Ogni tag rappresenta un controllo posizionabilenella pagina (TextBox, Button, TextBlock, ProgressBar, ecc.) • La struttura è gerarchica: è possibile inserire tag all’interno di altri nodi XAML © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 16. DEVELOPER EXPERIENCE © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 17. • Completamente gratuiti e scaricabili dal sito http://dev.windowsphone.com • Visual Studio 2012 + Blend for Windows Phone • Requisiti: • Windows 8 Pro o Enterprise a 64 bit • Processo con supporto SLAT per emulatore (i3, i5, i7) • Emulatorebasato su Hyper-V, con supporto all’hardware del computer (touch screen, microfono, ecc.) e con tool per il testing (GPS, accelerometro, ecc.) TOOL © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 18. • Portale per la pubblicazione e la gestione delle proprie applicazioni sullo Store • Costo di iscrizione:19 $ all’anno • Possibilità di pubblicareun numero illimitato di applicazioni a pagamento e 100 gratuite • Sblocco del telefono per lo sviluppo: • 1 telefono e 2 app: gratuito • 3 telefoni e 10 app: richiesta iscrizione allo Store DEV CENTER © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 19. • Costo di 79 € • Include: • 1 token per registrazione allo Store • 1 licenza per i controlli di Telerik per Windows Phone • 100 milioni di chiamate al mese verso i servizi di Buddy API • 2 ticket di supporto Nokia NOKIA DEVELOPER PREMIUM PROGRAM © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 20. • Unico punto di distribuzione delle applicazioni (scenari enterprise esclusi) • Processo di certificazione della durata massima di 5 giorni lavorativi che verifica: • Qualità tecnica dell’applicazione (crash, UI confusionaria, gravi bug) • Contenuti (vietata pornografia, violenza eccessiva, razzismo, ecc.) • Possibilità di distribuire le applicazioni in beta: nessun processo di certificazione,3 mesi di vita, massimo 10.000 utenti STORE © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 21. IL PRIMO PROGETTO Demo © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 22. ALCUNI CONCETTI CHIAVE © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 23. • Nel mondo di oggi il concetto di «asincrono» e «multi threading» sono sempre più importanti • L’esecuzionedi un’operazionenon deve bloccare l’interfaccia utente e rende l’applicazione inutilizzabile • Async e await sono due parole chiave aggiunte in C# 5.0 che semplificano questi scenari OPERAZIONI ASINCRONE © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 24. CALLBACK © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved. WebClient client = new WebClient(); client.DownloadStringCompleted += client_DownloadStringCompleted; client.DownloadStringAsync(new Uri("http://www.qmatteoq.com", UriKind.Absolute)); MessageBox.Show("Download avviato"); void client_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e) { MessageBox.Show(e.Result); MessageBox.Show("Download terminato"); }
  • 25. ASYNC E AWAIT © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved. public async Task<string>() { HttpClient client = new HttpClient(); MessageBox.Show("Download iniziato"); string result = await client.GetStringAsync("http://www.qmatteoq.com"); MessageBox.Show(result); MessageBox.Show("Download terminato"); }
  • 26. • Tool integrato in Visual Studio per installare librerie di terze parti in un progetto • Semplifica e automatizza il processo di installazionee configurazione • Alcune librerie importanti per Windows Phone: • Async pack for .NET • HttpClient NUGET © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 27. UN RSS READER Demo © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 28. RISORSE PER LO SVILUPPO © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 29. • Dev Center: http://dev.windowsphone.com • Nokia Developer: http://developer.nokia.com • MSDN http://msdn.microsoft.com/it-IT/ • «Sviluppareapplicazioni per Windows Phone 8» edito da Edizioni FAG Milano • Facebook https://www.facebook.com/groups/SviluppatoriNokiaItalia/ • Materiale su http://sdrv.ms/17dd0Ch RISORSE UTILI © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 30. • Un programma di Nokia appena inaugurato in Italia • Propone ogni settimana sfide legate allo sviluppo di applicazioni Windows Phone, che fanno accumulare punti XP: • Nuove applicazioni e giochi con determinate caratteristiche • Aggiornamento di applicazioni esistenti con nuove feature • Qualità (numero di recensioni positive) • I punti XP possono essere utilizzati per ottenere premi (in arrivo nelle prossime settimane) DVLUP © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • 31. 9/3/2013© 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved. Grazie! Blog: http://www.qmatteoq.com http://wp.qmatteoq.com Twitter: @qmatteoq Mail: info@qmatteoq.com