2012-07-09 49 views
2

我正在使用以下代碼,但即使在我調用它之後,我的應用程序仍在iOS任務管理器中(雙擊主屏幕按鈕)。如何正確終止MonoTouch應用程序?

UIApplication.SharedApplication.PerformSelector(
    new MonoTouch.ObjCRuntime.Selector("terminateWithSuccess"), null, 0f); 

當我刪除任務管理器應用程序(在應用程序保持在任務管理器的2秒鐘,然後按下紅色減號),它從任務管理器中消失,因爲它應該。

如果我使用上面的代碼來終止它,爲什麼它仍然在任務管理器中?我如何以編程方式強行殺死它,使其從任務管理器中消失?

+0

「任務管理器」中存在的應用程序圖標並不一定表示它正在運行。應用程序在啓動時會添加到此列表中,並且在用戶將其刪除之前將保留在此列表中。如果用戶點擊減號,則會在應用程序運行時終止該應用程序。如果達到低內存條件,操作系統可能會自行終止您的應用程序,這僅僅是iOS的應用程序生命週期。即使如此,你不應該像@Jason提到的那樣自己殺死你的應用程序,Apple會拒絕它。 – jonathanpeppers 2012-07-09 22:39:21

回答

1

您強制應用通過iOS界面關閉(http://support.apple.com/kb/ht5137)不會將其從「任務管理器」中刪除。 '任務管理器'確實顯示了最近的應用程序列表。

以編程方式終止應用程序不會將它從最近的應用程序列表中刪除。

3

根據蘋果的Human Interface Guidelines,這是一個不可否認的。否則可能會導致您的應用程序被拒絕

不要退出編程

永不放棄iOS應用程序編程,因爲人們往往 解釋爲崩潰。但是,如果外部環境阻止您的應用程序按預期運行,您需要告知用戶有關情況並解釋他們可以對此做些什麼。 根據應用故障的嚴重程度,您有兩個選擇 。

顯示一個有吸引力的屏幕,描述問題並提出 更正。屏幕提供的反饋可以讓用戶確信你的應用程序沒有問題。它讓用戶控制, 讓他們決定是否要採取糾正措施和 繼續使用您的應用程序或按Home鍵,然後打開一個 不同的應用

如果僅僅是一些應用程序的功能無法正常運作,顯示 當人們激活該功能時,屏幕或警報。只有當人們嘗試訪問不是 功能的功能時,纔會顯示 警報。

+0

感謝您的建議! – nbonwit 2012-07-09 23:46:44

相關問題