Ho il seguente strano comportamento nel mio Windows Phone 8, C# App.windows phone 8, le impostazioni delle applicazioni non persistono
Sto risparmiando un'impostazione con:
private void SaveProperty<T>(T property, string propertyName)
{
if (IsolatedStorageSettings.ApplicationSettings.Contains(propertyName))
IsolatedStorageSettings.ApplicationSettings[propertyName] = property;
else
IsolatedStorageSettings.ApplicationSettings.Add(propertyName, property);
IsolatedStorageSettings.ApplicationSettings.Save();
}
Quando viene eseguito l'app, posso leggere tutte le impostazioni sono memorizzate in IsolatedStorageSettings.ApplicationSettings
.
Ma quando riaprilo l'app (aprila dall'elenco delle app), il IsolatedStorageSettings.ApplicationSettings
-Dictionary contiene Zero (0
) Chiavi e valori.
Mi manca qualcosa?
Ho utilizzato ISETool.exe per scattare istantanee di IsolatedStorage della mia app (grazie a chepene). Ho visto questo comportamento: quando ho scritto le impostazioni (che significa che dopo la funzione SaveProperty<T>()
terminata) e l'app è ancora in esecuzione, ho le impostazioni salvate in _ApplicationSettings
. Questo è d'accordo con la mia osservazione che posso leggere dallo IsolatedStorageSettings.ApplicationSettings
quando l'app è in esecuzione. Il file _ApplicationSettings
-file esiste anche se è disattivato o non è in esecuzione (quando posso accedervi tenendo premuto il pulsante Indietro del telefono e quando l'app viene chiusa con il pulsante Indietro).
Ma quando l'applicazione viene aperta di nuovo (tramite la lista app), il -file _ApplicationSettings
è andato ...
Vedo anche che, quando sto scrivendo un file nella IsolatedStorage
con:
e quando quindi non leggo questo file, è andato quando apro l'app la prossima volta.
A proposito, per evitare confusione: Sono non reinstallare l'app ogni volta che lo apro.
Se avete bisogno di ulteriori informazioni si prega di chiedere.
Qualsiasi aiuto apprezzato.
stai usando l'emulatore o un dispositivo? se si utilizza l'emulatore, si sta uscendo dall'applicazione interrompendo la sessione di debug di Visual Studio o il pulsante "Indietro" nell'emulatore? –
Dopo il metodo 'Save()', cercare (con Isolated Storage Explorer) quali file esistono nella memoria isolata dell'app. – Chepene
@Beytan Kurt: sto usando un dispositivo, ma ho anche controllato l'emulatore: stesso comportamento. Non sto uscendo direttamente dall'app, piuttosto che riaprirlo aprendolo dall'elenco delle app. –