0
我有一個棘手的問題。在我的應用程序中,用戶可以更改他是否希望應用程序在後臺運行。如果是的話 - 它應該工作,直到用戶殺死它。如果沒有 - 它應該工作,直到用戶按下home按鈕,並且應該在用頂部按鈕鎖定屏幕之後工作。瞭解iPhone應用背景狀態
因此,在plist文件中有一行叫做「應用程序不在後臺運行」。如果我使它成爲「是」 - 應用程序運行,直到主頁按鈕被按下,並且鎖定屏幕後仍然工作。完善。如果我使它成爲「否」 - 應用程序一直運行,直到我殺死它。完善。
但我想你不能改變應用程序的plist值。好吧,我已經找到一種方法來做到這一點與applicationDidEnterBackground:
if (userDontWantItRunInBackground) { exit(0); }
但是有一個問題與(除了蘋果不推薦):
if "application does not run in background" = YES:
applicationDidEnterBackground is NOT CALLED on locking the screen
if "application does not run in background" = NO:
applicationDidEnterBackground is CALLED on locking the screen
這是沒有意義的!這不允許我在鎖定的屏幕上運行應用程序!