2011-02-08 25 views
5

Tôi gặp phải sự cố lạ, trong đó - (void)applicationWillTerminate:(UIApplication *)application{}- (void)applicationDidEnterBackground:(UIApplication *)application{} không được gọi khi tôi cố gắng dừng ứng dụng từ Xcode thay vì nút home.applicationWillTerminate không được gọi khi ứng dụng dừng từ Xcode

+1

Hành vi này có ý nghĩa, bởi vì Xcode là * không * nút trang chủ. – Moshe

+0

Tôi đang cố gắng để mô phỏng một tình huống mà tôi cần phải thực hiện hành động tập tin khi tôi nhận được để applicationWillTerminate. Khi tôi dừng ứng dụng đang chạy nó không gọi applicationWillTerminate, có phải vì nó chấm dứt ứng dụng đang chạy. – Ksinak

+0

@moshe: Cảm ơn. Tôi nghĩ rằng tôi hiểu bây giờ rằng kể từ khi đóng các ứng dụng đang chạy từ xcode, giết chết toàn bộ ứng dụng và do đó không có cuộc gọi thêm. – Ksinak

Trả lời

8

Hành vi này được mong đợi, vì Xcode là không phải là phím chủ trên thiết bị iOS của bạn.

Nếu bạn nhấp vào "Xây dựng và chạy", ví dụ: trong khi thử nghiệm một ứng dụng khác, bạn sẽ được nhắc giết ứng dụng đầu tiên. Nếu bạn làm vậy, ứng dụng đầu tiên sẽ đóng lại như thể nó chưa bao giờ mở. Điều này có vẻ là một hệ quả của ứng dụng đấm bốc cát.

Trên ghi chú tương tự, Nếu bạn nhấn phím chủ trong khi thử nghiệm ứng dụng trên thiết bị đa nhiệm, ứng dụng sẽ tiếp tục chạy ở chế độ nền và ứng dụng sẽ không kích hoạt applicationWillTerminate. Tuy nhiên, thiết bị của bạn sẽ kích hoạt applicationDidEnterBackground.

+0

Cảm ơn sự thấu hiểu !!! Yup tôi phải đối mặt với cùng một vấn đề với ứng dụng của tôi trong đa nhiệm và tôi đã phải ghi đè applicationDidEnterBackground ngoài applicationWillTerminate. Điều này trả lời nghi ngờ của tôi. – Ksinak

Các vấn đề liên quan