IOS 使用AVFoundation 扫描条形码、二维码等

在IOS7之前,我们一般都是通过ZXing或者ZBar来进行二维码、条形码的扫描识别。但在IOS7之后,,我们可以直接调用AVFoundation来进行码的扫描识别,一下是代码(当然要导入AVFoundation.framework)

– (void)setupCamera{= [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];= [AVCaptureDeviceInput deviceInputWithDevice:self.device error:nil];= [[AVCaptureMetadataOutput alloc]init];[self.output setMetadataObjectsDelegate:self queue:dispatch_get_main_queue()];= [[AVCaptureSession alloc]init];//会话[self.session setSessionPreset:AVCaptureSessionPresetHigh];]){[];}]){[];}=@[AVMetadataObjectTypeCode39Code];= [AVCaptureVideoPreviewLayer layerWithSession:self.session];=AVLayerVideoGravityResizeAspectFill;=CGRectMake(, [addSublayer:self.preview];// Start[self.session startRunning];}- (void)captureOutput:(AVCaptureOutput *)captureOutput didOutputMetadataObjects:(NSArray *)metadataObjects fromConnection:(AVCaptureConnection *)connection{// 会频繁的扫描,调用代理方法// 1. 如果扫描完成,停止会话[self.session stopRunning];// 2. 删除预览图层[self.preview removeFromSuperlayer];(metadataObjects.count > 0) {AVMetadataMachineReadableCodeObject *obj = metadataObjects[0];// 提示:如果需要对url或者名片等信息进行扫描,可以在此进行扩展!//_captureLabel.text = obj.stringValue;_label.text = obj.stringValue;NSLog(@”%@”, obj.stringValue);}}

走一个地方停一个地方。在我心里最美好的就是和你一起老在路上,

IOS 使用AVFoundation 扫描条形码、二维码等

相关文章:

你感兴趣的文章:

标签云: