Giter Club home page Giter Club logo

qrcodereader's Introduction

V3QRCodeReader

Platform Swift

===========

Description

V3QRCodeReader is a simple and beautiful wrapper around the camera with barcode capturing functionality and a great user experience.

  • Barcode scanning.
  • Tap to focus.
  • No external dependencies.

Screenshot

ScreenShot

How to use

1. Embeded Binaries

https://youtu.be/A7KhnHdOs6A

2. Drag and drop UIView in your view controller.
3. Change Class of UIVIew.
4. Bind your UIView.

https://youtu.be/_iWtz7nWIaM

5. Camera Permission.
Key: Privacy - Camera Usage Description
Value : $(PRODUCT_NAME) camera use

for more details please visit : https://ioshelloworld.blogspot.com/2016/10/ios-10-infoplist-changes-required.html

Paste "M1, M2" methods in your view controller (i.e. "ViewController.m")

"M1" viewDidLoad, viewWillAppear, viewWillDisappear

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    [qrCodeView setDelegate:self];
}

- (void)viewWillAppear:(BOOL)animated {
    if (!qrCodeView.isRunning) {
        [qrCodeView startReading];
    }
}

-(void)viewWillDisappear:(BOOL)animated {
    // stop reading
    [qrCodeView stopReading];
}
And here the delegate methods:

"M2" V3QRCodeReaderDelegate

#pragma mark - V3QRCodeReaderDelegate
- (void)getBarCodeData:(NSDictionary *)scanDictonary {
    NSLog(@"scanDictonary : %@",scanDictonary);
    
    UIAlertController *alertController = [UIAlertController alertControllerWithTitle:[scanDictonary valueForKey:@"barCodeType"] message:[scanDictonary valueForKey:@"barCodeValue"] preferredStyle:UIAlertControllerStyleAlert];
    UIAlertAction *cancel = [UIAlertAction actionWithTitle:@"Close" style:UIAlertActionStyleDefault handler:nil];
    [alertController addAction:cancel];

    // Get Screenshot of Barcode
    if ([scanDictonary valueForKey:@"image"]) {
        /* scan image
        UIImageView *imgView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 200, 100)];
         */
    }
    
    UIAlertAction *reScan = [UIAlertAction actionWithTitle:@"Rescan" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
        [self reScanBarCode];
    }];
    
    [alertController addAction:reScan];
    [self presentViewController:alertController animated:YES completion:nil];
}
Tap to focus feture added.

Supported BarCodeType

  • PDF417
  • QRCode
  • UPCECode
  • 39Code
  • Code39Mod43Code
  • EAN13Code
  • EAN8Code
  • Code93Code
  • Code128Code
  • AztecCode
  • Interleaved2of5Code
  • ITF14Code
  • DataMatrixCode

qrcodereader's People

Contributors

vivekvithlani avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

qrcodereader's Issues

Not archiving.

The project works fine, but when you try to make build it doesn't let you.

Example doesn't work

This app has crashed because it attempted to access privacy-sensitive data without a usage description.  The app's Info.plist must contain an NSCameraUsageDescription key with a string value explaining to the user how the app uses this data.

Need to stop reading

Good job with this reader.

However, there only a method to start reading, but not to stop.
I am using it in a UITabBarController and if I change the tab, it will still read. I need to stop it when the view disappears.

Thank you

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.