2015-02-07 104 views
0

如何在用戶單擊按鈕時關閉屏幕(設備進入睡眠)。ios如何在用戶單擊按鈕時關閉屏幕

我已經嘗試了下面的代碼,但沒有工作。

[UIApplication sharedApplication].idleTimerDisabled = YES; 

NSDate *future = [NSDate dateWithTimeIntervalSinceNow: 0.06 ]; 
[NSThread sleepUntilDate:future]; 
+3

你的意思是,你想發送設備睡覺(屏蔽屏幕)?這是不可能的。 – FreeNickname 2015-02-07 14:48:57

+0

至於你的代碼,第一行強制設備的屏幕始終處於開啓狀態(與我想要的相反),第二行只是將當前線程凍結60毫秒。 – FreeNickname 2015-02-07 15:00:12

+0

爲什麼你想要實現這樣的功能? – FreeNickname 2015-02-07 15:01:00

回答

1

如果您願意使用私人API(不會被蘋果接受的),有一個解決方案。

使用GSEventLockDeviceGraphicsServices.framework

此解決方案,但你不能把你的應用在AppStore上,它只會在內部確定使用應用程序

更多關於您的代碼:

[UIApplication sharedApplication].idleTimerDisabled = YES; 

是爲了防止您的設備在用戶設置的空閒時間後鎖定。

NSDate *future = [NSDate dateWithTimeIntervalSinceNow: 0.06 ]; 
[NSThread sleepUntilDate:future]; 

讓一條線程進入睡眠狀態,與鎖定設備無關。你可能會遇到一個應用程序凍結大約0.06秒,當測試這個...