iOS自定义键盘 – 相机不工作

iOS自定义键盘 – 相机不工作,第1张

概述我想创建一个自定义键盘,充当条码扫描器. 我已经做了整个编码,但输出不如预期的那样:我被要求摄像机的许可(第一次),但摄像头没有发送视频. 我想,出于安全考虑,键盘可能会有一些限制? 1.打开火炬 -(void) turnFlashOn{ AVCaptureDevice *flashLight = [AVCaptureDevice 我想创建一个自定义键盘,充当条码扫描器.
我已经做了整个编码,但输出不如预期的那样:我被要求摄像机的许可(第一次),但摄像头没有发送视频.

我想,出于安全考虑,键盘可能会有一些限制?

1.打开火炬

-(voID) turnFlashOn{    AVCaptureDevice *flashlight = [AVCaptureDevice                                   defaultDeviceWithMediaType:AVMediaTypeVIDeo];    if([flashlight isTorchAvailable] && [flashlight                                         isTorchModeSupported:AVCapturetorchModeOn])    {        BOol success = [flashlight lockForConfiguration:nil];        if(success){            NSError *error;            [flashlight setTorchMode:AVCapturetorchModeOn];            [flashlight setTorchModeOnWithLevel:1.0 error:&error];            NSLog(@"Error: %@",error);            [flashlight unlockForConfiguration];            NSLog(@"flash turned on -> OK");        }        else        {            NSLog(@"flash turn on -> ERROR");        }    }}

这给我这个日志输出,但闪光灯没有任何反应:

Error: (null)flash turned on -> OK

2.)扫描条形码(vIEwDIDLoad的一部分)

// SCANNER PARTself.captureSession = [[AVCaptureSession alloc] init];AVCaptureDevice *vIDeoCaptureDevice = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVIDeo];NSError *error = nil;AVCaptureDeviceinput *vIDeoinput = [AVCaptureDeviceinput deviceinputWithDevice:vIDeoCaptureDevice error:&error];if(vIDeoinput)    [self.captureSession addinput:vIDeoinput];else    NSLog(@"Error: %@",error);AVCaptureMetadataOutput *MetadataOutput = [[AVCaptureMetadataOutput alloc] init];[self.captureSession addOutput:MetadataOutput];[MetadataOutput setMetadataObjectsDelegate:self queue:dispatch_get_main_queue()];[MetadataOutput setMetadataObjectTypes:@[AVMetadataObjectTypeQRCode,AVMetadataObjectTypeEAN13Code]];AVCaptureVIDeoPrevIEwLayer *prevIEwLayer = [[AVCaptureVIDeoPrevIEwLayer alloc] initWithSession:self.captureSession];camVIEw = [[UIVIEw alloc] initWithFrame: [[UIScreen mainScreen] bounds]];prevIEwLayer.frame = camVIEw.layer.bounds;[camVIEw.layer addSublayer:prevIEwLayer];self.keyboard.barcodeVIEw.clipsToBounds=YES;camVIEw.center = CGPointMake(self.keyboard.barcodeVIEw.frame.size.wIDth/2,self.keyboard.barcodeVIEw.frame.size.height/2);[self.keyboard.barcodeVIEw addSubvIEw:camVIEw];

如果我在我的键盘上按一个特殊的键,这个叫做:

-(voID)scanbarcodeNow{AudioServicesPlaySystemSound(systemSoundTock);NSLog(@"Start scanning...");self.keyboard.barcodeVIEw.hIDden=false;[self.keyboard.barcodeVIEw addSubvIEw:camVIEw];[self.keyboard.barcodeVIEw setBackgroundcolor:[UIcolor redcolor]];[self.captureSession startRunning];

}

唯一的事情是,keyboard.barcodeVIEw将其背景颜色更改为红色.我已经看到,我所做的所有接线应该是好的.但是没有显示凸轮的视频….

谁能帮我吗?

解决方法 您要恢复为空的原因是因为您无法访问它.这其实不是一个BUG.根据苹果指南,某些API不适用于iOS 8扩展(请参阅下面的第3项).

它吸吮,但我总是鼓励人们阅读新的功能,看看他们想做什么是可能的,在住在一个想法(节省很多时间)之前.肯定查看App Extension Programming Guide了解更多信息.

总结

以上是内存溢出为你收集整理的iOS自定义键盘 – 相机不工作全部内容,希望文章能够帮你解决iOS自定义键盘 – 相机不工作所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1095369.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存