Accesso ai Dati in Windows Phone: Isolated Storage, Database e Data Sharing
Upcoming SlideShare
Loading in...5
×
 

Accesso ai Dati in Windows Phone: Isolated Storage, Database e Data Sharing

on

  • 1,364 views

Anche se una delle peculiarità degli smartphone è la connettività ad Internet, questa non sempre si può dare per scontata: l'utente potrebbe trovarsi in una zona non coperta dal segnale oppure ...

Anche se una delle peculiarità degli smartphone è la connettività ad Internet, questa non sempre si può dare per scontata: l'utente potrebbe trovarsi in una zona non coperta dal segnale oppure essere all'estero. Per questo motivo è importante imparare ad utilizzare le API messe a disposizione per la memorizzazione locale dei dati. Nel corso del webinar impareremo a lavorare con i file e con le cartelle, a gestire i dati all'interno di un database e a condividerli tramite una delle novità di Microsoft Windows Phone 8, il data sharing.
//
While smartphones offer internet connectivity, this capability can’t be taken for granted: A user may be located in an area not covered by the signal or may be abroad. For this reason, it is important to learn how to use the APIs made available for local data storage. During this webinar, you’ll learn to work with files and folders, manage the data within a database, and share data using Microsoft Windows Phone 8 APIs.

Statistics

Views

Total Views
1,364
Views on SlideShare
1,364
Embed Views
0

Actions

Likes
0
Downloads
24
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Accesso ai Dati in Windows Phone: Isolated Storage, Database e Data Sharing Accesso ai Dati in Windows Phone: Isolated Storage, Database e Data Sharing Presentation Transcript

  • ITALIAN WEBINAR #6 ACCESSO AI DATI: STORAGE, DATABASE, DATA SHARING Matteo Pagani Nokia Developer Champion Microsoft MVP – Windows Phone Development Software Engineer @ Funambol
  • AGENDA • Salvare e leggere file nello storage • Serializzazione • Database: SQL CE e SQL Lite © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • STORAGE © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • STORAGE • • • • Le applicazioni Windows Phone possono memorizzare i dati in un’area di memoria chiamata «isolated storage» Si comporta come un file system tradizionale, ma è isolato: le altre applicazioni non possono accedervi Il limite di spazio utilizzabile coincide con la memoria libera del telefono Viene eliminato quando l’applicazione viene disinstallata © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved. 10/22/2013
  • STORAGE • • • • • • API incluse nel namespace Windows.Storage Nuove API del Windows Runtime con approccio asincrono, differenti da quelle di Windows Phone 7 ApplicationData.LocalFolder rappresenta la root dello storage I file sono rappresentati dalla classe StorageFile Le cartelle sono rappresentate dalla classe StorageFolder Sono allineate con le API di Windows 8, eccetto per: • RoamingFolder • TemporaryFolder © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • IL PROGETTO • • • • In alcuni casi, può essere necessario accedere ai file inclusi nel progetto di Visual Studio La Build Action dei file deve essere impostata su Content La classe Windows.ApplicationModel.Package.Current.InstalledLocation permette di accedere in sola lettura alle risorse del progetto I dati sono rappresentati come StorageFolder e StorageFile, analogamente allo storage © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • LE IMPOSTAZIONI • • • • La classe IsolatedStorageSettings consente di memorizzare facilmente le impostazioni della nostra applicazioni E’ di tipo Dictionary<string, object>: ogni impostazione viene automaticamente serializzata e deserializzata Una volta aggiunte / modificate / eliminate le impostazioni occorre sempre chiamare il metodo Save(). Non allineata con il Windows Runtime: sono le stesse API di Windows Phone 7. Le API del Windows Runtime non sono supportate. © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • WINDOWS PHONE POWER TOOLS • • • • • L’SDK include un tool per accedere allo storage di un’applicazione, ma a riga di comando WP Power Tools è un tool di terze parti per esplorare lo storage delle applicazioni dotato di interfaccia grafica Funziona sia con l’emulatore che con i device Permette di simulare l’aggiornamento delle applicazioni http://wptools.codeplex.com/ © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • STORAGE Demo © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • SERIALIZZAZIONE © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • SERIALIZZAZIONE • • • • Nello sviluppo di un’applicazione si lavora con classi ed oggetti Tali oggetti complessi non possono essere memorizzati così come sono nello storage Serializzazione = conversione di oggetti complessi in una struttura dati piatta, memorizzabile in un file XML o JSON -> Si applica quando i dati vengono modificati Deserializzazione = conversione di dati XML o JSON in oggetti complessi -> Si applica al caricamento dell’applicazione © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • SERIALIZZAZIONE • • Il framework include due classi per la serializzazione e deserializzazione in formato XML e JSON: • DataContractSerializer per XML • DataContractJsonSerializer per JSON In caso di utilizzo del formato JSON, è più efficiente affidarsi a JSON.NET: http://json.codeplex.com/ © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • SERIALIZZAZIONE • • Vantaggi • Semplice da implementare • Velocità nell’accesso e nella manipolazione dei dati Svantaggi • L’intera struttura dati deve essere mantenuta in memoria • Nessuna indicizzazione dei dati • Ad ogni aggiornamento dei dati, occorre salvare l’intera struttura © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • SERIALIZZAZIONE Demo © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • DATABASE © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • SQL CE • • • • • Introdotto a partire da Windows Phone 7.5 Engine proprietario di Microsoft per la gestione di database disconnessi e memorizzati su singolo file Viene utilizzata la versione 3.5 di SQL CE LINQ to SQL come ORM per la manipolazione dei dati Approccio code first: si definisce la struttura del database da codice: • Le entità rappresentano le tabelle • Le proprietà rappresentano le colonne © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • SQL CE • • • • • Supporta la possibilità di gestire l’aggiornamento dello schema del database Supporta indici e relazioni Supporta il lazy loading nelle relazioni (i dati della relazione vengono caricati solo quando effettivamente richiesti) Non è possibile eseguire query SQL in maniera tradizionale Due modalità di accesso: • Lettura e scrittura (database nello storage) • Sola lettura (database nel progetto di Visual Studio) © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • SQL CE TOOLBOX • • • • • Tool di terze parti che semplifica la gestione del database SQL CE Disponibile sia come add-in di Visual Studio che come applicazione a sé Feature principali: • Generazione automatica delle classi per Windows Phone partendo da un DB già esistente • Possibilità di includere un database pre popolato nel progetto e copiarlo nello storage • Editor visuale del database (VS2012 supporta solo SQL CE 4.0) http://sqlcetoolbox.codeplex.com http://www.microsoft.com/en-us/download/confirmation.aspx?id=5783 © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • SQL CE • • Vantaggi: • E’ il più versatile e completo disponibile su Windows Phone, in termini di potenzialità e semplicità d’uso Svantaggi: • Performance non eccellenti in presenza di grandi quantità di dati • E’ compatibile solamente con Windows Phone 7 e 8, non è portabile su altre piattaforme © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • SQL CE Demo © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • SQLITE • • • Introdotto in Windows Phone 8, grazie al supporto al codice nativo del Windows Runtime Simile a SQL CE (database disconnesso memorizzato su singolo file), ma open source e multi piattaforma Al contrario di SQL CE, non è supportato nativamente dal sistema operativo: sono necessarie librerie esterne, dato che l’engine di SQLite è mantenuto da terze parti © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • SQLITE • • Estensione per Visual Studio per installare l’engine: http://s.qmatteoq.com/SQLiteWP Due librerie disponibili: • Sqlite-net, che offre un approccio ORM basato su LINQ: http://s.qmatteoq.com/sqlite-net-wp8 • Sqlite wrapper, che supporta solamente l’esecuzione di query SQL: http://s.qmatteoq.com/sqlite-net-wp8 © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • SQLITE • • Vantaggi: • Performance molto buone • Engine cross platform • Lo strato di accesso ai dati è condivisibile con le Windows Store app di Windows 8 Svantaggi: • Sqlite-net semplice da usare, ma limitato (no supporto relazioni) • Sqlite Wrapper potente, ma complesso (solo query SQL) • Non compatibile con Windows Phone 7, a meno di non utilizzare un porting dell’engine di terze parti © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • SQLITE Demo © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • NOKIA WORLD © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • LUMIA 1320 & LUMIA 1520 © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • LUMIA 1320 & LUMIA 1520 • • • • • • Tre colonne di tile, rispetto agli altri device Lumia 1520: risoluzione 1080p (1080x1920) Lumia 1320: risoluzione 720p (720x1280) Entrambi hanno un aspect ratio di 16:9, contro i 15:9 delle altre risoluzioni Supportata pienamente solo da Windows Phone 8 A breve update dell’SDK con un nuovo emulatore per testare la nuova risoluzione © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • LUMIA 2520 © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • LUMIA 2520 • • • • • Tablet con Windows 8.1 RT Display 10.1 da 1080p (1920x1080) Processore Quad Core Qualcomm Snapdragon 800 a 2.2 GHz Windows Runtime, condiviso in parte con il runtime di Windows Phone Nuova opportunità per gli sviluppatori Nokia: porting delle applicazioni Windows Phone su Windows 8 per offrire agli utenti un’esperienza completa © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • NOKIA DEVELOPER OFFERS • • Nuovo programma di Nokia per gli sviluppatori iscritti a DVLUP Include: • Iscrizione o rinnovo per lo store di Windows Phone • BugSense Performance Monitoring Solution • Telerik Rad Controls • Infragistics NetAdvantage controls © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved.
  • NOKIA DEVELOPER OFFERS • • • • • Gratuito Occorre aver sviluppato e pubblicato almeno 2 applicazioni per qualsiasi piattaforma mobile Se siete già iscritti al Nokia Developer Premium program, è richiesto aver pubblicato almeno 1 app successivamente all’iscrizione Per continuare a far parte del programma e accedere ai nuovi bonus futuri, è necessario pubblicare o aggiornare un’app entro 6 mesi dall’iscrizione http://developer.nokia.com/Developer_Programs/nokia_developer_offers. xhtml © 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 Materiale su http://sdrv.ms/17VccT8 © 2012 Nokia. All rights reserved. © 2012 Microsoft. All rights reserved. 10/22/2013