Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/extensions/Variables/includes/ExtVariables.php on line 198
AVFlashlight: Difference between revisions - iPhone Development Wiki

AVFlashlight: Difference between revisions

From iPhone Development Wiki
(→‎Example usage: It should be there.)
m (Updated.)
 
(3 intermediate revisions by 3 users not shown)
Line 8: Line 8:
}}
}}


The method {{ObjcCall|AVFlashlight|hasFlashlight|ClassMethod=1}} indicates the LED flash availability.
The method {{ObjcCall|AVFlashlight|hasFlashlight|ClassMethod=1}} indicates the LED flash availability. It is equivalent to <code>MGGetBoolAnswer(CFSTR("camera-flash"))</code>


{{function signature
{{function signature
|signature=-(BOOL)setFlashlightLevel:(float)level withError:(NSError *)error;
|signature=-(BOOL)setFlashlightLevel:(CGFloat)level withError:(NSError *)error;
|firmware=7.0 —
|firmware=7.0 —
}}
}}
Line 20: Line 20:


<source lang=objc>
<source lang=objc>
AVFlashlight *flashlight;
static AVFlashlight *flashlight;


...
...


// Make sure you don't have any others AVFlashlight object instantiated
// Make sure you don't have any other AVFlashlight object instantiated, or this flashlight won't be functional.
flashlight = [[AVFlashlight alloc] init];
if ([AVFlashlight hasFlashlight]) {
if ([flashlight hasFlashlight])
flashlight = [AVFlashlight new];
  [flashlight setFlashlightLevel:AVCaptureMaxAvailableTorchLevel withError:nil];
[flashlight setFlashlightLevel:1.0 withError:nil];
}


...
...


// Do this when you want to turn power/light off the LED flash
// Do this when you want to turn power/light off the LED flash
[flashlight release];
[flashlight turnPowerOff];
</source>
</source>


{{occlass|library=AVFoundation.framework|navbox=1}}
{{occlass|library=AVFoundation.framework|navbox=1}}

Latest revision as of 06:00, 4 August 2017

AVFlashlight is a private class introduced in iOS 7 for turning the device's LED flash on or off. The example application that uses this class is Control Center in SpringBoard.

Methods

Signature +(BOOL)hasFlashlight;
Available in 7.0 —

The method +[AVFlashlight hasFlashlight] indicates the LED flash availability. It is equivalent to MGGetBoolAnswer(CFSTR("camera-flash"))

Signature -(BOOL)setFlashlightLevel:(CGFloat)level withError:(NSError *)error;
Available in 7.0 —

The method -[AVFlashlight setFlashlightLevel:withError:] is used for setting the flashlight level.

Example usage

static AVFlashlight *flashlight;

...

// Make sure you don't have any other AVFlashlight object instantiated, or this flashlight won't be functional.
if ([AVFlashlight hasFlashlight]) {
	flashlight = [AVFlashlight new];
	[flashlight setFlashlightLevel:1.0 withError:nil];
}

...

// Do this when you want to turn power/light off the LED flash
[flashlight turnPowerOff];