У меня есть вопрос относительно сохранения/загрузки данных в Windows Universal Apps 8.1.Сохранить данные на выходе Windows Phone 8.1 (Универсальные приложения)
Я не могу сохранить данные при выходе из приложения. Мой вызов сериализации выполняется в методе OnSuspending
в App.xaml.cs, но я не думаю, что он вызывается всякий раз, когда я закрываю приложение.
Иногда он сохраняет данные, иногда нет. Вот мой код для методов OnSuspending и Save.
private void OnSuspending(object sender, SuspendingEventArgs e)
{
var deferral = e.SuspendingOperation.GetDeferral();
// TODO: Save application state and stop any background activity
Debug.WriteLine("SUSPENDING");
HabitManager.HabitSerializer.Save();
deferral.Complete();
}
public async static void Save()
{
Debug.WriteLine("SAVED");
var json = JsonConvert.SerializeObject(HabitList.Instance.GetHabits());
var habits = HabitList.Instance.GetHabits();
foreach (var h in habits)
{
Debug.WriteLine("S: " + h);
}
StorageFile saveFile = await folder.CreateFileAsync(fileName, CreationCollisionOption.ReplaceExisting);
await Windows.Storage.FileIO.WriteTextAsync(saveFile, json);
}
Так что мой вопрос, в чем может быть проблема, и если это не хороший механизм сериализация, вы можете предложить мне лучший друг? Спасибо
Вы экономите много? Существует ограничение времени на то, как долго «OnSuspending» позволяет запускать. –
@Brian Rasmussen На самом деле, я просто хочу, чтобы он сэкономил, когда я выхожу из приложения –