[閃光燈使用時崩潰[AVCaptureDevice setTorchMode:]]

崩潰的日志:*** -[AVCaptureDevice setTorchMode:] The passed torchMode 1 is not supported - use -isTorchModeSupported: to discover valid torch modes (null)

分析:起因是因為是打開閃光燈的時候,有些設(shè)備不支持閃光燈導(dǎo)致崩潰。比如ipad不支持閃光燈,解決方法如下。

解決方法:
- (void)switchFlashDeviceWithOn:(BOOL)on {
    // 更改設(shè)置的時候必須先鎖定設(shè)備,修改完后再解鎖,否則崩潰
    [self.flashDevice lockForConfiguration:nil];
    
    // 判斷設(shè)備是否支持閃光燈
    if ([self.flashDevice hasFlash]) {
        if (on) {
            [self.flashDevice setTorchMode:AVCaptureTorchModeOn];
        } else {
            [self.flashDevice setTorchMode:AVCaptureTorchModeOff];
        }
    }else {
        DLog(@"該設(shè)備不支持閃光燈")
    }
    
    // 修改完畢解鎖
    [self.flashDevice unlockForConfiguration];

}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容