2012-06-12 24 views
4

iOS中似乎存在一個先前記錄(並報告)的錯誤(它仍然存在於'最新的iOS'中),這意味着儘管您可以使用[[UIScreen mainScreen] setBrightness:x]已經開始,您無法在背景事件期間隨時調用它(這意味着您無法將亮度恢復至應用程序啓動之前的水平)。任何人都可以在背景/退出時使用[[UIScreen mainScreen] setBrightness]?

// Works as expected, screen dims 
- (void)applicationDidBecomeActive:(UIApplication *)application 
{ 
    NSLog(@"applicationDidBecomeActive"); 

    // Dim the screen (works) 
    [[UIScreen mainScreen] setBrightness:0.2]; 
} 

但是......

// Seems to fire if you double-tap the home key ('task manager' ;) 
// Doesn't work 
- (void)applicationWillResignActive:(UIApplication *)application 
{ 
    NSLog(@"applicationWillResignActive"); 

    [[UIScreen mainScreen] setBrightness:1.0]; 
} 

的背景,這是我移植於Android到iOS我成功的碼頭時鐘應用,現在已發現,我無法還原屏幕亮度。這顯然是一個錯誤,但我想知道是否有人發現瞭解決方法?

這裏是一個非常簡單的原型測試應用程序,它證明了錯誤:

https://github.com/philask/Dockclock-iOS

+0

你不在這裏討論beta操作系統的功能,對嗎? – Till

+0

除非你認爲iOS 4.0仍在測試版中,否則不會。 – philask

+0

啊,這就是爲什麼你在最新的編輯中刪除了該測試版的提及... -.- – Till

回答

1

我沒有嘗試當我的應用程序進入後臺恢復..但我注意到,它就會恢復時您鎖定和解鎖設備。

+1

在蘋果開發者論壇更深入的潛水顯示這顯然是一個錯誤。意圖是,應用程序可以使用setBrightness,但它喜歡和操作系統將處理恢復開關/背景(如Android所做的)的亮度。所以這是一個錯誤,並且我已經向Apple記錄了一個錯誤報告(儘管我知道有幾百個其他開發者)。 – philask

+0

那麼有沒有一種方法可以在應用程序結束或進入背景時恢復亮度? – Fredv

+0

可以確認這是IOS 6.1.4 – tmanthey

相關問題