現在網絡上的都是使用這個方法,但是其實沒有效果的,
後面一篇本Blog将會給出另外一種有效擷取的代碼
+ (float)getBacklightLevel
{
//以下方法據查隻在2.x的sdk有效,真機測試确實沒有效果。
float previousBacklightLevel = 2.0;
NSNumber *bl = (NSNumber*) CFPreferencesCopyAppValue(CFSTR("SBBacklightLevel" ), CFSTR("com.apple.springboard"));
previousBacklightLevel = [bl floatValue]; //a variable to store the previous level so you can reset it.
[bl release];
return previousBacklightLevel;
}
//使用上述功能前,需要進入GraphicsServices.h。
//因為是私有API,GSEventSetBacklightLevel(float value)這個方法,
//可能需要自己額外在GraphicsServices.h裡定義一下(有待驗證),或者使用ToolChain編譯。
//一般,會涉及到調節螢幕亮度的程式,都會搭配防止休眠的功能,代碼很簡單:
//[[UIApplication sharedApplication] setIdleTimerDisabled:YES];
//GSEventSetBacklightLevel(newLevel); //The new level: 0.0 - 1.0.
本文轉自 arthurchen 51CTO部落格,原文連結:http://blog.51cto.com/arthurchen/577943,如需轉載請自行聯系原作者