Application Requirements - 2

by Sandro Vecchiarelli 20. December 2011 03:47

Il punto 2.10.7 recita testualmente così: 

Your application must make a privacy policy available to users that informs them about how location data from the location service API is used and disclosed and the controls that users have over the use and sharing of location data.

Cosa vuol dire? In pratica signfica che siccome la vostra applicazione fa uso di API per la geolocalizzazione, allora dovete permettere all'utente di essere informato su come tratterete i suoi dati per rispettare la privacy. La cosa è assolutamente lecita e va nella corretta direzione del buonsenso. Il problema è che a volte tale requisito sembra inutile visto che la vostra applicazione non memorizza alcunchè da un punto di vista di localizzazione. In effetti anche se apparentemente non sfruttate la posizione dell'utente, se si usano però le API che rientrano nel namespace Microsoft.Phone.Controls.Maps allora siamo costretti ad inserire una policy per la gestione della privacy.

Pushpin

Il solo inserimento del controllo Pushpin causa un utilizzo del namespace citato sopra.

La policy che ho utilizzato e che vi mostro di seguito ha passato i controlli per cui se volete potete riutilizzarla nelle vostre applicazioni:

E' evidente che le parti offuscate riportano il nome della società proprietaria dell'applicazione. Ci sono comunque alcune attenzioni da portare nella realizzazione dell'architettura richiesta. La policy deve essere visibile immediatamente all'apertura dell'applicazione e deve partire ovviamente in modale per costringere l'utente a scegliere un'opzione. Attenzione!!!! Ho utilizzato uno sfondo nero fisso con testo bianco, perchè altrimenti se viene cambiato tema del dispositivo, si rischia che il testo non sia visibile. Deve essere sempre presente la possibilità di modificare la policy. Attenzione 2!!!!! se alla presenza della finestra modale di policy si preme il tasto Back, NON si deve uscire, ma semplicemente deve sparire la finestra e far continuare l'utente come se non avesse accettato la policy, pena il fallimento della certificazione. Tutto ciò è spiegato nei requirements di Microsoft. E' fondamentale inoltre memorizzare le impostazioni scelte dall'utente e inserirle in IsolatedStorage.

OnNavigatedTo

Per riassumere vi ifaccio vedere il codice del metodo OnNavigatedTo

 

Come risulta chiaro prima si controlla che già non ci sia una policy impostata nell'Isolation storage. Se c'è si controlla quali sono le impostazioni dell'utente (True o False vuol dire naturalmente ha accettato o meno la policy) e si abilitano o disabilitano i bottoni che portano alle pagine di utilizzo dele mappe. Se non c'è allora si rende visibile il Policy Container per far scegliere l'utente. Il Policy container rimane collapsed quando la scelta è stata già fatta.

Buon codice a tutti!

Tags: , ,

WP7

Sandro Vecchiarelli

MeLaureato in Scienze dell'informazione a Pisa, si è occupato di analisi e progettazione software per istituti bancari e pubbliche amministrazioni, approfondendo inoltre gli aspetti della programmazione ad oggetti sin dai primi esordi del web in Italia. Certificato MCSE e MCT si occupa anche di elementi legati al networking e alla sicurezza. Svolge un' importante attività di docenza su argomenti riguardanti la piattaforma .NET, XML e Web services. E' autore di 2 corsi di successo: "Windows Server Security"(MIE1311), riguardante gli aspetti legati alla sicurezza della piattaforma Windows Server, e "Ingegneria del software: tecniche per la costruzione di software di qualità" (MIEAU36) dove vengono affrontate le tecniche per scrivere codice il più possibile robusto, riusabile e performante. Negli ultimi anni ha acquisito anche importanti competenze riguardanti prodotti molto complessi quali Microsoft Biztalk Server, oltre ad aver affrontato l'analisi e lo sviluppo di applicazioni in ambienti embedded quali Windows CE e Pocket PC. Nel 2008 è stato nominato MVP Microsoft Windows Mobile, riconfermato nel 2009, 2010 e 2011.

1 2 3 4 5 6 7 8

Tag cloud

Page List