2012-04-02 76 views
0

我們不希望使用exit(0)來關閉應用程序,但是我們希望允許應用程序以編程方式轉到後臺,並且每個用戶都可以執行此操作。有沒有辦法將應用程序以編程方式發送到後臺而不退出?模擬主頁按鈕的點擊?將應用程序發送到後臺進程

提前致謝!

回答

1

不可能。主頁按鈕點擊運行到私人的GSEvents框架。這是exit()或不幸的是。

+0

不過,我已經在很多地方,該應用可以開始使用出口拒絕讀取(0)。我們不想要這個。然而,我們希望讓用戶能夠設置一個選項,允許應用程序在處理過程中將其本身最小化,並執行其他操作。我們的後臺進程令人驚歎,但我們可以選擇自動執行此操作。我們不想用退出(0) – mejim707 2012-04-02 02:36:23

+0

來解決這個問題。具有諷刺意味的是,很多Zinga應用程序使用退出函數 – CodaFi 2012-04-02 02:37:26

+0

但是,這會導致後臺處理無法工作,因爲應用程序實際上終止了,不乾淨,但確實如此。我們需要完成後臺任務。 – mejim707 2012-04-02 02:42:03

2

有沒有辦法將應用程序以編程方式發送到後臺而不退出?

不。用戶應該是在控制應用程序 - 應用程序不應該移動到自己的背景(或退出)。

+0

但是,我讀過很多地方的應用程序可能會被拒絕使用退出(0)。我們不想要這個。然而,我們希望讓用戶能夠設置一個選項,允許應用程序在處理過程中將其本身最小化,並執行其他操作。我們的後臺進程令人驚歎,但我們可以選擇自動執行此操作。我們不想通過退出來解決這個問題(0) – mejim707 2012-04-02 02:36:57

+1

你想做什麼以及你能做*的事情恐怕是兩件不同的事情。最好的解決方案是讓您的應用程序在用戶進行任何處理時保持對用戶有用。如果這是不可能的,讓用戶知道該應用正在做什麼,並讓他們如果他們想要點擊主頁按鈕。不要調用exit() - 讓用戶保持控制。 – Caleb 2012-04-02 03:00:11

0

下面的代碼可用於iOS應用程序發送到後臺編程,而不退出

DispatchQueue.main.async { 
     UIApplication.shared.performSelector(inBackground:NSSelectorFromString("suspend"), with: nil) 
    }