美文网首页
二维码读取

二维码读取

作者: xiari1991 | 来源:发表于2016-10-10 10:37 被阅读30次

来源
读取主要用到CoreImage 不过要强调的是读取二维码的功能只有在iOS8之后才支持,我们需要在相册中调用一个二维码,将其读取,代码如下

#pragma mark-> 我的相册
-(void)myAlbum{
    
    NSLog(@"我的相册");
    if([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]){
        //1.初始化相册拾取器
        UIImagePickerController *controller = [[UIImagePickerController alloc] init];
        //2.设置代理
        controller.delegate = self;
        //3.设置资源:
        /**
         UIImagePickerControllerSourceTypePhotoLibrary,相册
         UIImagePickerControllerSourceTypeCamera,相机
         UIImagePickerControllerSourceTypeSavedPhotosAlbum,照片库
         */
        controller.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;
        //4.随便给他一个转场动画
        controller.modalTransitionStyle=UIModalTransitionStyleFlipHorizontal;
        [self presentViewController:controller animated:YES completion:NULL];
        
    }else{
        
        UIAlertView * alert = [[UIAlertView alloc]initWithTitle:@"提示" message:@"设备不支持访问相册,请在设置->隐私->照片中进行设置!" delegate:nil cancelButtonTitle:@"确定" otherButtonTitles:nil, nil];
        [alert show];
    }
    
}

完成相册代理, 我们在代理中添加读取二维码方法

#pragma mark-> imagePickerController delegate
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    //1.获取选择的图片
    UIImage *image = info[UIImagePickerControllerOriginalImage];
    //2.初始化一个监测器
    CIDetector*detector = [CIDetector detectorOfType:CIDetectorTypeQRCode context:nil options:@{ CIDetectorAccuracy : CIDetectorAccuracyHigh }];
    
    [picker dismissViewControllerAnimated:YES completion:^{
        //监测到的结果数组
        NSArray *features = [detector featuresInImage:[CIImage imageWithCGImage:image.CGImage]];
        if (features.count >=1) {
            /**结果对象 */
            CIQRCodeFeature *feature = [features objectAtIndex:0];
            NSString *scannedResult = feature.messageString;
            UIAlertView * alertView = [[UIAlertView alloc]initWithTitle:@"扫描结果" message:scannedResult delegate:nil cancelButtonTitle:@"确定" otherButtonTitles:nil, nil];
            [alertView show];
          
        }
        else{
            UIAlertView * alertView = [[UIAlertView alloc]initWithTitle:@"提示" message:@"该图片没有包含一个二维码!" delegate:nil cancelButtonTitle:@"确定" otherButtonTitles:nil, nil];
            [alertView show];
            
        }
        
  
    }];
    
    
}

相关文章

  • 二维码

    二维码 二维码的生成和读取-生成二维码:就是讲给定的信息,将其按照二维码的编码方式生成一张图片-读取二维码:识别二...

  • 实用技术第1篇——如何生成和读取二维码【上】

    前言 苹果官方从iOS7开始集成了二维码的生成和读取功能,本文简单介绍下如何生成和读取二维码。 如何生成二维码 步...

  • 实用技术第2篇——如何生成和读取二维码【下】

    前面学习了二维码的生成,今天简单介绍下如何读取二维码。 注意:要成功读取二维码,一定要有真机才能测试,模拟器不行 ...

  • golang如何生成与读取二维码

    golang如何生成与读取二维码 生成二维码 skip2/go-qrcode生成二维码 获取: 生成二维码图片: ...

  • iOS 图片转换二维码

    二维码 1.ios7开始集成了二维码的生成和读取功能 2.生成二维码的步骤 3.二维码的内容:「纯文本」 「名片」...

  • Axure学习笔记:TIM扫描

    TIM的扫一扫功能,主要用于扫描对方二维码添加好友,其中在这界面也提供了读取相册二维码功能,以及显示用户的二维码的...

  • iOS 二维码

    1、二维码的生成 CoreImage 生成从iOS7开始集成了二维码的生成和读取功能此前被广泛使用的zbarsdk...

  • 二维码读取

    来源读取主要用到CoreImage 不过要强调的是读取二维码的功能只有在iOS8之后才支持,我们需要在相册中调用一...

  • 二维码扫描和创建(上)

    扫描二维码(包括读取和解码) 扫描二维码OC的开源库有ZBar和ZXing。iOS7以后iOS拥有原生的扫码功能。...

  • 个人永久性免费-Excel催化剂插件功能修复与更新汇总篇之二

    修复及更新时间:2018-08-03 第12波-快速生成、读取、导出条形码二维码 因群友们建议,导出二维码/条形码...

网友评论

      本文标题:二维码读取

      本文链接:https://www.haomeiwen.com/subject/wbwmyttx.html