Le applicazioni basate su Windows Phone 7 sono disattivate quando l'utente va verso un'altra applicazione, per poi essere riattivate se l'utente ci ritorna, ad esempio facendo seguito al click sul pulsante back, o in seguito all'azione legata all'esecuzione di uno Chooser o di un Launcher.
In tal senso, l'applicazione può salvare informazioni in questo stato transiente, sfruttando la classe PhoneApplicationService, che offre un metodo State che può essere utilizzato a tale scopo. Di seguito una implementazione che consente di recuperare queste informazioni facilmente da questo storage:
public static class StateStorage { public static T Read<T>(string key) where T : class { try { if (PhoneApplicationService.Current.State.ContainsKey(key)) return PhoneApplicationService.Current.State[key] as T; return default(T); } catch { return default(T); } } public static void Write<T>(string key, T value) where T : class { if (PhoneApplicationService.Current.State != null) PhoneApplicationService.Current.State[key] = value; } }
Qualora ci fosse la necessità di sfruttare uno storage permanente, le applicazioni Windows Phone basate su Silverlight possono accedere all'Isolated Storage, che funziona nello stesso identico modo rispetto alla versione "completa" di Silverlight.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare flat e flatMap per appiattire array innestati in array
Miglioramenti nell'accessibilità con Angular CDK
Creazione di componenti personalizzati in React.js con Tailwind CSS
Personalizzare l'errore del rate limiting middleware in ASP.NET Core
Utilizzare domini personalizzati gestiti automaticamente con Azure Container Apps
Eseguire una query su SQL Azure tramite un workflow di GitHub
Utilizzare database e servizi con gli add-on di Container App
C# 12: Cosa c'è di nuovo e interessante
Utilizzare un service principal per accedere a Azure Container Registry
Reactive form tipizzati con modellazione del FormBuilder in Angular
Workflow di continuous deployment tramite pull request label in GitHub
Specificare il versioning nel path degli URL in ASP.NET Web API