QR / Barcode Scanner
QR / Barcode Scanner recognizes QR / Barcode.
Create Instants
Start / Stop Scanner
Use Scanning Information
Create Instants
>QR_BarcodeViewController.mm
- (void)viewDidLoad
{
...
trackingManager = [[MasTrackerManager alloc] init];
cameraDevice = [[MasCameraDevice alloc] init];
}
Start / Stop Scanner
To start / stop Scanner, refer to the following code.
>QR_BarcodeViewController.mm
- (void)resumeAR
{
...
[trackingManager startTracker:TRACKER_TYPE_CODE_SCANNER];
}
- (void)pauseAR
{
[trackingManager stopTracker];
...
}
Use Scanning Information
When you point the camera to QR / Barcode, the code name will be displayed on the screen. Refer to the following code to use the scanning information.
>QR_BarcodeViewController.mm
- (void)glkView:(GLKView *)view drawInRect:(CGRect)rect
{
...
MasTrackingState *trackingState = [trackingManager updateTrackingState];
MasTrackedImage *trackedImage = [trackingState getImage];
[backgroundCameraQuad draw:trackedImage projectionMatrix:[cameraDevice getBackgroundPlaneProjectionMatrix]];
glEnable(GL_DEPTH_TEST);
NSString *codeScanResult = [trackingState getCodeScanResult];
if(![codeScanResult isEqual: @""])
{
NSError* error;
NSData *objectData = [codeScanResult dataUsingEncoding:NSUTF8StringEncoding];
NSDictionary *json = [NSJSONSerialization JSONObjectWithData:objectData options:NSJSONReadingMutableContainers error:&error];
self.formatLabel.text = json[@"Format"];
self.codeLabel.text = json[@"Value"];;
[trackingManager stopTracker];
[self.scanButton setAlpha:1.0f];
[self.scanButton setEnabled:YES];
[self.scanButton setTitle:@"Start Scan" forState:UIControlStateNormal];
}
...
}
