2013-03-20 19 views
5

giết nếu ứng dụng hoàn thành ~ 10 phút ở chế độ nền, ứng dụng sẽ ở chế độ bị tạm ngưng. Ứng dụng có thể bị giết theo hai cách sau:Làm cách nào chúng tôi có thể kiểm tra ứng dụng ios bị người dùng hoặc ứng dụng iOS

  1. iOS có thể giết ứng dụng: Trong trường hợp này "applicationWillTerminate" sẽ gọi.

  2. Người dùng có thể giết các ứng dụng sử dụng một cách rõ ràng giao diện người dùng đa nhiệm (bằng cách nhấp đúp nút Home và nhấn -() nút màu đỏ).

Trong kịch bản thứ hai như thế nào chúng ta có thể nhận được rằng ứng dụng bị giết bởi người sử dụng?

tôi kiểm tra bên dưới câu hỏi nhưng không có kết quả tốt đẹp: App killed by user

+3

đặt cờ NSUserDefaults khi tác vụ nền của bạn được thực hiện. Nếu cờ không có mặt ở lần khởi chạy tiếp theo, ứng dụng của bạn đã bị giết trước khi nó kết thúc tác vụ nền. –

Trả lời

13

Nếu ứng dụng của bạn ở trạng thái lơ lửng các applicationWillTerminate sẽ không bao giờ được gọi là không phân biệt đã giết iOS ứng dụng hoặc người dùng.

applicationWillTerminate sẽ chỉ gọi khi ứng dụng của bạn ở chế độ nền và ứng dụng bị chết (iOS hoặc người dùng) nền thuật ngữ có nghĩa là nền đang chạy ở chế độ nền không ở trạng thái bị treo.

Chỉ cần đọc this reference

applicationWillTerminate: -Lets bạn biết rằng ứng dụng của bạn đã được chấm dứt. Phương thức này không được gọi nếu ứng dụng của bạn bị tạm ngưng.

Dưới đây là bảng của các quốc gia khác nhau enter image description here

Background - Ứng dụng trong nền và mã thực thi. Hầu hết các ứng dụng nhập trạng thái này một thời gian ngắn trên đường bị treo. Tuy nhiên, một ứng dụng yêu cầu thời gian thực hiện thêm có thể vẫn ở trạng thái này trong một khoảng thời gian. Ngoài ra, một ứng dụng được khởi chạy trực tiếp vào nền sẽ chuyển sang trạng thái này thay vì trạng thái không hoạt động. Để biết thông tin về cách thực thi mã trong khi ở chế độ nền, hãy xem Thực thi nền.

+0

Liên kết tham chiếu hiện không hoạt động. –

+0

Chỉ cần chỉnh sửa - sửa liên kết. –

+0

Tôi gặp sự cố khi ứng dụng của tôi mất mã thông báo đăng nhập khi ứng dụng bị tắt ở chế độ nền và tôi cố mở nó sau một thời gian dài. Các mã thông báo được lưu đúng chỉ khi người dùng giết ứng dụng, vì vậy tôi suy ra có đến lừa trên applicationWillTerminate, vì có một sự khác biệt tùy thuộc vào người giết ứng dụng. Tôi đọc tài liệu, nhưng vẫn chưa rõ. Bất kỳ ý tưởng? Bạn sẽ giới thiệu phương pháp đại biểu nào? Cảm ơn. – Josh