Tôi đã viết một windows 8 ứng dụng cửa hàng (XAML/C#) mà tôi đã chạy trên một bề mặt Microsoft. Ứng dụng về cơ bản là một ứng dụng nhập dữ liệu mà không có bất kỳ nút lưu nào. Quá trình lưu được thực hiện tự động khi nhảy giữa các trang hoặc khi ứng dụng bị tạm ngưng.Lưu dữ liệu khi Windows 8 Ứng dụng Cửa hàng đóng
Tuy nhiên một senario tôi dường như không thể bắt là khi người dùng đóng ứng dụng (khi người dùng vuốt từ trên xuống dưới màn hình).
Vì vậy, tại thời điểm này tôi đăng ký vào App.Current.Suspending và gọi tiết kiệm ở đây:
App.Current.Suspending += Current_Suspending;
void Current_Suspending(object sender, Windows.ApplicationModel.SuspendingEventArgs e)
{
Save();
}
Tôi cũng ghi đè lên các phương pháp SaveState và gọi Save ở đây:
protected override void SaveState(Dictionary<string, object> pageState)
{
Save();
base.SaveState(pageState);
}
Nhưng niether các các phương thức được gọi khi ứng dụng được đóng lại.
Không ai biết của một sự kiện được kích hoạt khi ứng dụng đóng?
Cảm ơn
Việc bạn sử dụng từ "đóng cửa" khi nói chuyện với bạn về các ứng dụng bị đình chỉ là một chút bối rối. Bạn có thể xác định xem sự kiện Tạm dừng có thực sự xảy ra hay không, nếu không, thì bạn sẽ không tìm được sự kiện đúng cách. Có vẻ như bài viết này có thể giúp bạn thực hiện điều này theo cách chính xác: http://msdn.microsoft.com/en-us/library/windows/apps/hh986968.aspx –
Sự kiện tạm ngưng kích hoạt khi ứng dụng bị tạm ngưng nhưng khi ứng dụng bị đóng nó không. Khi tôi nói đã đóng, nghĩa là người dùng đang vuốt màn hình từ trên xuống dưới (hoặc nhấn Alt-F4) – Sun
Sự kiện tạm dừng của bạn chỉ xảy ra khi ứng dụng bị tạm ngưng không bị đóng. Bạn cần phải xử lý các ứng dụng thực sự vĩnh viễn đóng cửa bằng cách xử lý các sự kiện xảy ra khi ứng dụng được đóng lại. –