SlideShare a Scribd company logo
MOBILE CAMP – ROMA
12 Febbraio 2015
MOBILE CAMP – ROMA
MOBILE CAMP – ROMA
MOBILE CAMP – ROMA
MOBILE CAMP – ROMA
Afrikaans
Basque (Basque)
Galician
Hausa
50 languages supported in4 nuovi linguaggi aggiunti con
MOBILE CAMP – ROMA
http://blogs.windows.com/windows_phone/b/wpdev/archive/2013/06/21/tips-for-localizing-and-monetizing-your-app-for-windows-phone-users.aspx
Top primary user languages for all app downloaded
Sviluppare un’app in inglese copre soltanto il 25% degli utenti Windows Phone. Aggiungere il Cinese
Mandarino e lo Spagnolo porta la copertura a ~60%, e aggiungendo Russo, Italiano, Portoghese (Brasile), e
Francese copre la maggior parte degli utenti Windows Phone.
MOBILE CAMP – ROMA
http://blogs.windows.com/windows_phone/b/wpdev/archive/2013/06/21/tips-for-localizing-and-monetizing-your-app-for-windows-phone-users.aspx
Number of app downloads per market, Jan-Jun 2013
MOBILE CAMP – ROMA
MOBILE CAMP – ROMA
MOBILE CAMP – ROMA
<TextBlock x:Uid="Greeting" Text="" />
Leggere le resource strings dal codice:
Usare una resource strings da XAML:
var loader = new Windows.ApplicationModel.Resources.ResourceLoader();
var string = loader.GetString('Farewell');
MOBILE CAMP – ROMA
MOBILE CAMP – ROMA
blog.tpcware.com/2014/06/resource-management-on-windows-runtime-apps/
MOBILE CAMP – ROMA
Un tool di localizzazione facile da usare
• Si integra con Visual Studio 2013 ed offre il supporto al ciclo di
gestione delle traduzioni.
• Aiuta a verificare e tenere traccia delle modifiche nei file
resource.
• Consente l’aggiunta delle lingue da supportare.
• Utilizza il format XLIFF, standard industrial di localizzazione
• Offre un motore di pseudo-linguaggio per identificare i
problemi
di mancata traduzione durante lo sviluppo dell’app
• Utilizza i servizi Microsoft di traduzione automatica per offrire
• una traccia di traduzione.
MOBILE CAMP – ROMA
MOBILE CAMP – ROMA
Lookup & downloads
Prodotti Microsoft via MSDN e
TechNet
Collezione di regole che
definiscono linguaggio e
convenzioni di stile
MOBILE CAMP – ROMA
MOBILE CAMP – ROMA
MOBILE CAMP – ROMA
MOBILE CAMP – ROMA
// Use the Windows.Globalization.DateTimeFormatting.DateTimeFormatter class
// to display dates and times using basic formatters.
var sdatefmt = new Windows.Globalization.DateTimeFormatting.DateTimeFormatter("shortdate");
var stimefmt = new Windows.Globalization.DateTimeFormatting.DateTimeFormatter("shorttime");
// Obtain the date that will be formatted.
var dateToFormat = DateTime.Now;
// Perform the actual formatting.
var sdate = sdatefmt.Format(dateToFormat);
var stime = stimefmt.Format(dateToFormat);
// Results for display.
var results = "Short Date: " + sdate + "n" + "Short Time: " + stime;
I date and time picker controls seguono la regione selezionata dall’utente.
Per mostrare le date e i tempi da codice, occorre usare formattatori di Date/Time e Number formatters per
mostrare date, tempi e numeri nel format preferito dall’utente.
MOBILE CAMP – ROMA
// Determine the current users default currency.
var userCurrency = Windows.System.UserProfile.GlobalizationPreferences.Currencies[0];
// Number to be formatted.
var fractionalNumber = 12345.67;
// Currency formatter using the current users preference settings for number formatting.
var userCurrencyFormat = new Windows.Globalization.NumberFormatting.CurrencyFormatter(userCurrency);
var currencyDefault = userCurrencyFormat.Format(fractionalNumber);
// Create a formatter initialized to a specific currency.
// In this case it's the Euro with the default number formatting for France.
var currencyFormatEuroFR =
new Windows.Globalization.NumberFormatting.CurrencyFormatter("EUR", new[] { "fr-FR" }, "FR");
var currencyEuroFR = currencyFormatEuroFR.Format(fractionalNumber);
// Results for display.
var results = "Fixed number (" + fractionalNumber + ")n" + "With user's default currency: " +
currencyDefault + "n" + "Formatted Euro (fr-FR defaults): " + currencyEuroFR;
Culture differenti hanno formati numerici differenti
Usate NumberFormatting per mostrare decimali, percento / permille, valori monetari
MOBILE CAMP – ROMA
Calendar
MOBILE CAMP – ROMA
MOBILE CAMP – ROMA
Ad

More Related Content

Similar to Universal Apps localization and globalization (11)

MyRésumé [IT]
MyRésumé [IT]MyRésumé [IT]
MyRésumé [IT]
Felice Rea
 
Federico Massi.it - Intro alle app mobile Cordova
Federico Massi.it - Intro alle app mobile CordovaFederico Massi.it - Intro alle app mobile Cordova
Federico Massi.it - Intro alle app mobile Cordova
Federico Massi
 
Sviluppare una app mobile net oriented
Sviluppare una app mobile net orientedSviluppare una app mobile net oriented
Sviluppare una app mobile net oriented
Alessandro Morvillo
 
Progetto e realizzazione di un'applicazione WebGIS per la visualizzazione di ...
Progetto e realizzazione di un'applicazione WebGIS per la visualizzazione di ...Progetto e realizzazione di un'applicazione WebGIS per la visualizzazione di ...
Progetto e realizzazione di un'applicazione WebGIS per la visualizzazione di ...
diegohusu
 
Attività e Mansioni co Microgate
Attività e Mansioni co MicrogateAttività e Mansioni co Microgate
Attività e Mansioni co Microgate
Sandro Rizzetto
 
L'EVOLUZIONE E LE NOVITÀ DI WINDOWS PHONE 8.1
L'EVOLUZIONE E LE NOVITÀ DI WINDOWS PHONE 8.1L'EVOLUZIONE E LE NOVITÀ DI WINDOWS PHONE 8.1
L'EVOLUZIONE E LE NOVITÀ DI WINDOWS PHONE 8.1
codeblock
 
Web Services, le librerie Nusoap e PHP5 nell’interrogazione dei dati demograf...
Web Services, le librerie Nusoap e PHP5 nell’interrogazione dei dati demograf...Web Services, le librerie Nusoap e PHP5 nell’interrogazione dei dati demograf...
Web Services, le librerie Nusoap e PHP5 nell’interrogazione dei dati demograf...
Vincenzo Patruno
 
GAE python GDG Milano L04
GAE python GDG Milano L04GAE python GDG Milano L04
GAE python GDG Milano L04
Paolo Dadda
 
Smau Napoli 2015 - Telecom Italia Digital Solutions
Smau Napoli 2015 - Telecom Italia Digital SolutionsSmau Napoli 2015 - Telecom Italia Digital Solutions
Smau Napoli 2015 - Telecom Italia Digital Solutions
SMAU
 
Meet no Neet: presentazione del progetto App per organizzare eventi
Meet no Neet: presentazione del progetto App per organizzare eventiMeet no Neet: presentazione del progetto App per organizzare eventi
Meet no Neet: presentazione del progetto App per organizzare eventi
Fondazione Mondo Digitale
 
MyRésumé [IT]
MyRésumé [IT]MyRésumé [IT]
MyRésumé [IT]
Felice Rea
 
Federico Massi.it - Intro alle app mobile Cordova
Federico Massi.it - Intro alle app mobile CordovaFederico Massi.it - Intro alle app mobile Cordova
Federico Massi.it - Intro alle app mobile Cordova
Federico Massi
 
Sviluppare una app mobile net oriented
Sviluppare una app mobile net orientedSviluppare una app mobile net oriented
Sviluppare una app mobile net oriented
Alessandro Morvillo
 
Progetto e realizzazione di un'applicazione WebGIS per la visualizzazione di ...
Progetto e realizzazione di un'applicazione WebGIS per la visualizzazione di ...Progetto e realizzazione di un'applicazione WebGIS per la visualizzazione di ...
Progetto e realizzazione di un'applicazione WebGIS per la visualizzazione di ...
diegohusu
 
Attività e Mansioni co Microgate
Attività e Mansioni co MicrogateAttività e Mansioni co Microgate
Attività e Mansioni co Microgate
Sandro Rizzetto
 
L'EVOLUZIONE E LE NOVITÀ DI WINDOWS PHONE 8.1
L'EVOLUZIONE E LE NOVITÀ DI WINDOWS PHONE 8.1L'EVOLUZIONE E LE NOVITÀ DI WINDOWS PHONE 8.1
L'EVOLUZIONE E LE NOVITÀ DI WINDOWS PHONE 8.1
codeblock
 
Web Services, le librerie Nusoap e PHP5 nell’interrogazione dei dati demograf...
Web Services, le librerie Nusoap e PHP5 nell’interrogazione dei dati demograf...Web Services, le librerie Nusoap e PHP5 nell’interrogazione dei dati demograf...
Web Services, le librerie Nusoap e PHP5 nell’interrogazione dei dati demograf...
Vincenzo Patruno
 
GAE python GDG Milano L04
GAE python GDG Milano L04GAE python GDG Milano L04
GAE python GDG Milano L04
Paolo Dadda
 
Smau Napoli 2015 - Telecom Italia Digital Solutions
Smau Napoli 2015 - Telecom Italia Digital SolutionsSmau Napoli 2015 - Telecom Italia Digital Solutions
Smau Napoli 2015 - Telecom Italia Digital Solutions
SMAU
 
Meet no Neet: presentazione del progetto App per organizzare eventi
Meet no Neet: presentazione del progetto App per organizzare eventiMeet no Neet: presentazione del progetto App per organizzare eventi
Meet no Neet: presentazione del progetto App per organizzare eventi
Fondazione Mondo Digitale
 

More from Nicolò Carandini (20)

Wasm and Blazor CDays keynote
Wasm and Blazor CDays keynoteWasm and Blazor CDays keynote
Wasm and Blazor CDays keynote
Nicolò Carandini
 
The absolute need of Secure Http
The absolute need of Secure HttpThe absolute need of Secure Http
The absolute need of Secure Http
Nicolò Carandini
 
Christmas greetings cards with blazor
Christmas greetings cards with blazorChristmas greetings cards with blazor
Christmas greetings cards with blazor
Nicolò Carandini
 
Xamarin DevOps
Xamarin DevOpsXamarin DevOps
Xamarin DevOps
Nicolò Carandini
 
Code review e pair programming con Visual Studio Live Share
Code review e pair programming con Visual Studio Live ShareCode review e pair programming con Visual Studio Live Share
Code review e pair programming con Visual Studio Live Share
Nicolò Carandini
 
Azure dev ops meetup one
Azure dev ops meetup oneAzure dev ops meetup one
Azure dev ops meetup one
Nicolò Carandini
 
Spa with Blazor
Spa with BlazorSpa with Blazor
Spa with Blazor
Nicolò Carandini
 
The Hitchhiker's Guide to the Azure Galaxy
The Hitchhiker's Guide to the Azure GalaxyThe Hitchhiker's Guide to the Azure Galaxy
The Hitchhiker's Guide to the Azure Galaxy
Nicolò Carandini
 
Game matching with SignalR
Game matching with SignalRGame matching with SignalR
Game matching with SignalR
Nicolò Carandini
 
Swagger loves WebAPI
Swagger loves WebAPISwagger loves WebAPI
Swagger loves WebAPI
Nicolò Carandini
 
Xamarin Workbooks
Xamarin WorkbooksXamarin Workbooks
Xamarin Workbooks
Nicolò Carandini
 
Swagger per tutti
Swagger per tuttiSwagger per tutti
Swagger per tutti
Nicolò Carandini
 
Web app slots and webapi versioning
Web app slots and webapi versioningWeb app slots and webapi versioning
Web app slots and webapi versioning
Nicolò Carandini
 
Intro xamarin forms
Intro xamarin formsIntro xamarin forms
Intro xamarin forms
Nicolò Carandini
 
Swagger pertutti
Swagger pertuttiSwagger pertutti
Swagger pertutti
Nicolò Carandini
 
Windows 10 design
Windows 10 designWindows 10 design
Windows 10 design
Nicolò Carandini
 
Windows 10 IoT
Windows 10 IoTWindows 10 IoT
Windows 10 IoT
Nicolò Carandini
 
Mobile services multi-piattaforma con Xamarin
Mobile services multi-piattaforma con XamarinMobile services multi-piattaforma con Xamarin
Mobile services multi-piattaforma con Xamarin
Nicolò Carandini
 
Applicazioni web con ASP.NET Owin e Katana
Applicazioni web con ASP.NET Owin e KatanaApplicazioni web con ASP.NET Owin e Katana
Applicazioni web con ASP.NET Owin e Katana
Nicolò Carandini
 
Azure Mobile Services con il .NET Framework
Azure Mobile Services con il .NET FrameworkAzure Mobile Services con il .NET Framework
Azure Mobile Services con il .NET Framework
Nicolò Carandini
 
Wasm and Blazor CDays keynote
Wasm and Blazor CDays keynoteWasm and Blazor CDays keynote
Wasm and Blazor CDays keynote
Nicolò Carandini
 
The absolute need of Secure Http
The absolute need of Secure HttpThe absolute need of Secure Http
The absolute need of Secure Http
Nicolò Carandini
 
Christmas greetings cards with blazor
Christmas greetings cards with blazorChristmas greetings cards with blazor
Christmas greetings cards with blazor
Nicolò Carandini
 
Code review e pair programming con Visual Studio Live Share
Code review e pair programming con Visual Studio Live ShareCode review e pair programming con Visual Studio Live Share
Code review e pair programming con Visual Studio Live Share
Nicolò Carandini
 
The Hitchhiker's Guide to the Azure Galaxy
The Hitchhiker's Guide to the Azure GalaxyThe Hitchhiker's Guide to the Azure Galaxy
The Hitchhiker's Guide to the Azure Galaxy
Nicolò Carandini
 
Web app slots and webapi versioning
Web app slots and webapi versioningWeb app slots and webapi versioning
Web app slots and webapi versioning
Nicolò Carandini
 
Mobile services multi-piattaforma con Xamarin
Mobile services multi-piattaforma con XamarinMobile services multi-piattaforma con Xamarin
Mobile services multi-piattaforma con Xamarin
Nicolò Carandini
 
Applicazioni web con ASP.NET Owin e Katana
Applicazioni web con ASP.NET Owin e KatanaApplicazioni web con ASP.NET Owin e Katana
Applicazioni web con ASP.NET Owin e Katana
Nicolò Carandini
 
Azure Mobile Services con il .NET Framework
Azure Mobile Services con il .NET FrameworkAzure Mobile Services con il .NET Framework
Azure Mobile Services con il .NET Framework
Nicolò Carandini
 
Ad

Universal Apps localization and globalization

  • 1. MOBILE CAMP – ROMA 12 Febbraio 2015
  • 5. MOBILE CAMP – ROMA Afrikaans Basque (Basque) Galician Hausa 50 languages supported in4 nuovi linguaggi aggiunti con
  • 6. MOBILE CAMP – ROMA http://blogs.windows.com/windows_phone/b/wpdev/archive/2013/06/21/tips-for-localizing-and-monetizing-your-app-for-windows-phone-users.aspx Top primary user languages for all app downloaded Sviluppare un’app in inglese copre soltanto il 25% degli utenti Windows Phone. Aggiungere il Cinese Mandarino e lo Spagnolo porta la copertura a ~60%, e aggiungendo Russo, Italiano, Portoghese (Brasile), e Francese copre la maggior parte degli utenti Windows Phone.
  • 7. MOBILE CAMP – ROMA http://blogs.windows.com/windows_phone/b/wpdev/archive/2013/06/21/tips-for-localizing-and-monetizing-your-app-for-windows-phone-users.aspx Number of app downloads per market, Jan-Jun 2013
  • 10. MOBILE CAMP – ROMA <TextBlock x:Uid="Greeting" Text="" /> Leggere le resource strings dal codice: Usare una resource strings da XAML: var loader = new Windows.ApplicationModel.Resources.ResourceLoader(); var string = loader.GetString('Farewell');
  • 12. MOBILE CAMP – ROMA blog.tpcware.com/2014/06/resource-management-on-windows-runtime-apps/
  • 13. MOBILE CAMP – ROMA Un tool di localizzazione facile da usare • Si integra con Visual Studio 2013 ed offre il supporto al ciclo di gestione delle traduzioni. • Aiuta a verificare e tenere traccia delle modifiche nei file resource. • Consente l’aggiunta delle lingue da supportare. • Utilizza il format XLIFF, standard industrial di localizzazione • Offre un motore di pseudo-linguaggio per identificare i problemi di mancata traduzione durante lo sviluppo dell’app • Utilizza i servizi Microsoft di traduzione automatica per offrire • una traccia di traduzione.
  • 15. MOBILE CAMP – ROMA Lookup & downloads Prodotti Microsoft via MSDN e TechNet Collezione di regole che definiscono linguaggio e convenzioni di stile
  • 19. MOBILE CAMP – ROMA // Use the Windows.Globalization.DateTimeFormatting.DateTimeFormatter class // to display dates and times using basic formatters. var sdatefmt = new Windows.Globalization.DateTimeFormatting.DateTimeFormatter("shortdate"); var stimefmt = new Windows.Globalization.DateTimeFormatting.DateTimeFormatter("shorttime"); // Obtain the date that will be formatted. var dateToFormat = DateTime.Now; // Perform the actual formatting. var sdate = sdatefmt.Format(dateToFormat); var stime = stimefmt.Format(dateToFormat); // Results for display. var results = "Short Date: " + sdate + "n" + "Short Time: " + stime; I date and time picker controls seguono la regione selezionata dall’utente. Per mostrare le date e i tempi da codice, occorre usare formattatori di Date/Time e Number formatters per mostrare date, tempi e numeri nel format preferito dall’utente.
  • 20. MOBILE CAMP – ROMA // Determine the current users default currency. var userCurrency = Windows.System.UserProfile.GlobalizationPreferences.Currencies[0]; // Number to be formatted. var fractionalNumber = 12345.67; // Currency formatter using the current users preference settings for number formatting. var userCurrencyFormat = new Windows.Globalization.NumberFormatting.CurrencyFormatter(userCurrency); var currencyDefault = userCurrencyFormat.Format(fractionalNumber); // Create a formatter initialized to a specific currency. // In this case it's the Euro with the default number formatting for France. var currencyFormatEuroFR = new Windows.Globalization.NumberFormatting.CurrencyFormatter("EUR", new[] { "fr-FR" }, "FR"); var currencyEuroFR = currencyFormatEuroFR.Format(fractionalNumber); // Results for display. var results = "Fixed number (" + fractionalNumber + ")n" + "With user's default currency: " + currencyDefault + "n" + "Formatted Euro (fr-FR defaults): " + currencyEuroFR; Culture differenti hanno formati numerici differenti Usate NumberFormatting per mostrare decimali, percento / permille, valori monetari
  • 21. MOBILE CAMP – ROMA Calendar