No Script

Q1.When I successfully scan a barcode, why do asterisks (*) appear throughout the result?

Scanning any barcode utilizing the Manatee Works Barcode Scanner SDK without previously entering a valid license key will produce a result partially masked with asterisks (*).

The solution is to:

  • Utilize our Evaluation License generator to generate a free 30-day trial license. After 30 days, the decoder will revert to its unlicensed state, and again partially mask results. If you wish to continue evaluating the SDK after 30 days, you may request a renewal of the evaluation keys by clicking the Renew button under each barcode type and completing a short Survey;

  • Obtain a commercial license by submitting a “Purchase Request” from our Purchase option within the Manatee Works Developer Network.

2016
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.

Q2.I can’t scan a barcode. What might be the problem?

If you have troubles scanning a barcode with the Manatee Works Barcode Scanner SDK, try the following:

  • Check if the barcode type you are attempting to scan is enabled and active within the SDK. It should be set by executing the MWB_setActiveCodes() function. If you are using multiple symbologies, you need to add each of them into a single MWB_setActiveCodes() call by using the OR flag (‘|’). Example: MWB_setActiveCodes(MWB_CODE_MASK_25 | MWB_CODE_MASK_39).

    NOTE: If you execute multiple MWB_setActiveCodes() calls only the last one will remain active;

  • Check that your device camera meets our minimum requirements – 5 Megapixel (MP) with Autofocus (AF);

  • Try different barcode images to confirm an image is not damaged, too small, or has poor resolution;

  • Clean the camera lens;

  • Try alternate devices to confirm a device is not physically damaged or defective.

2016
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.

Q3.Why am I experiencing slow decoding speeds or scanning failures when trying to scan barcodes?

There are several possible reasons that you might experience slow or incomplete decoding:

  • Slow device - On older devices with slower processors, scanning can be laggy and inefficient. Try using lower resolution camera buffer images and a lower scanning level (2 is recommended).

  • High-density barcodes - If you are trying to scan high density and complex barcodes it may be inefficient to use low resolution camera buffer images and lower scanning levels. Try increasing the resolution and scanning level to 3. Keep in mind that these settings could be CPU taxing for older, slower devices.

  • Camera specifications - Check if your device has a camera with minimum requirements - Autofocus (AF) support and 5 megapixel (MP) capture is recommended. Using cameras with lower specifications will decrease the likelihood of achieving a successful scan, especially on complex barcode types and images.

2016
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.

Q4.Why does the Manatee Works Barcode Scanners app return strange or non-printable characters as a result?

Some types of barcodes (PDF147, Data Matrix, Aztec) may be encoded with non-printable and/or zero-value characters.

In these cases, their binary results should be parsed by predetermined rules as specified by the encoding entity. When such barcodes are decoded within our free public applications, an attempt is made to convert the data to a string result for display purposes. Therefore, the textual representation may not be completely accurate.

2016
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.

Q5.Why is your barcode scanner unable to scan any Code 39, Code 25, or Codabar barcode with four or less characters?

Codabar, Code 11, Code 25, Code 39, and MSI Plessey barcode symbologies have weak or non-existent error protection and checksum. This can lead to false detections whenever a code is encoded with four or less characters. In order to mitigate such cases, we have set a default minimum character length for those barcode types. The default values are currently set to 4 characters for Code 25, and MSI Plessey; and at 5 characters for Codabar, Code 11, and Code 39.

For specific use-cases that require scanning those barcode types below the default minimum threshold length, we have integrated a special configuration parameter within the Barcode Scanner SDK initialization block that can be used to change the barcode length for those symbologies.

Below are examples of the Barcode Scanner SDK initialization for setting minimum detection lengths.

 

iOS

MWB_setMinLength(MWB_CODE_MASK_25, 4);
MWB_setMinLength(MWB_CODE_MASK_MSI, 4);
MWB_setMinLength(MWB_CODE_MASK_39, 5);
MWB_setMinLength(MWB_CODE_MASK_CODABAR, 5);
MWB_setMinLength(MWB_CODE_MASK_11, 5);

Android


BarcodeScanner.MWBsetMinLength(BarcodeScanner.MWB_CODE_MASK_25, 4);
BarcodeScanner.MWBsetMinLength(BarcodeScanner.MWB_CODE_MASK_MSI, 4);
BarcodeScanner.MWBsetMinLength(BarcodeScanner.MWB_CODE_MASK_39, 5);
BarcodeScanner.MWBsetMinLength(BarcodeScanner.MWB_CODE_MASK_CODABAR, 5);
BarcodeScanner.MWBsetMinLength(BarcodeScanner.MWB_CODE_MASK_11, 5);
2016
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.

Q6.How do I tune scanning for PDF417?

Since 2D barcodes tend to be very dense, the default settings for the SDK are not the most optimal for reading PDF417 barcodes.  For this reason, we have added a compile flag to our sample programs to demonstrate the optimal settings; you just need to update the source code to enable this option.

For example, in the iOS sample program, simply change the following line in mainScreen.m:

#define PDF_OPTIMIZED   false


to
 

#define PDF_OPTIMIZED   true



The sample program will then only enable the PDF417 symbology, set the effort level to 2, and use high resolution images from the camera. The scanning direction is also set to horizontal only.

2016
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.

Q7.Is it possible to use a front camera of a mobile device to decode barcodes using the Manatee Works Barcode Scanner SDK?

Yes! However you should first make sure that the front camera is of sufficient quality for successfully decoding your targeted barcodes. In order to proceed, follow these instructions:

iOS

In the mainScreen.m of our sample iOS app, replace:

self.device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];

with the following code:

NSArray *devices = [AVCaptureDevicedevicesWithMediaType:AVMediaTypeVideo];

for (AVCaptureDevice *device in devices) {
    if ([device position] == AVCaptureDevicePositionFront) {
        self.device = device;
        break;
        }
}

iOS Swift

Replace the line:

self.device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];

with the following code:

let devices = AVCaptureDevice.devices()

for device in devices {
    if (device.hasMediaType(AVMediaTypeVideo)) {
        if(device.position == AVCaptureDevicePosition.Front) {
            self.device = device as? AVCaptureDevice
        }
    }
}

Android

In the CameraManager.java of our sample Android app, replace:

camera = Camera.open();

with the following code:

camera = Camera.open(1);
2016
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.

Q8.How do I determine the Manatee Works Barcode Scanner SDK version?

Here is a code block within our sample applications that demonstrates how to determine the current library version.

Android:

                    int ver = BarcodeScanner.MWBgetLibVersion();
                    int v1 = (ver >> 16);
                    int v2 = (ver >> 8) & 0xff;
                    int v3 = (ver & 0xff);
                    String libVersion = "Lib version: " + String.valueOf(v1)+"."+String.valueOf(v2)+"."+String.valueOf(v3);
                    Toast.makeText(this, libVersion, Toast.LENGTH_LONG).show();

iOS:

                    int ver = MWB_getLibVersion();
                    int v1 = (ver >> 16);
                    int v2 = (ver >> 8) & 0xff;
                    int v3 = (ver & 0xff);
                    NSString *libVersion = [NSString stringWithFormat:@"%d.%d.%d", v1, v2, v3];
                    NSLog(@"Lib version: %@", libVersion);
2016
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.

Q9.Do you provide a parsing solution for US Driver’s Licenses?

Yes! The Barcode Scanner Parser Plugin for AAMVA processes the raw results from the Mantee Works Barcode Scanner SDK contained within a PDF417 barcode from a US Driver's License. It provides a structured result as pre-formatted string or JSON.

2016
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.

Q10.When integrating the Titanium module, I experience a Verification Issue because of an unlicensed module?

If you previously downloaded our Barcode Scanner SDK Titanium Module from our Website and attempted project integration without previously purchasing the module from the Appcelerator Marketplace, you might be experiencing an issue similar to what is depicted in the following image:

Verification Issue

In order to resolve this issue, purchase the free module from the official Appcelerator Marketplace. You do not need to download and use the version from their site, but you must register the module as a purchase.

2016
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.

Q11.When I change the scanning rectangle for a specific barcode type, why doesn’t the viewfinder size change accordingly?

If you have more than a single barcode type active within the decoder module, the viewfinder will be calculated as a union of the scanning rectangles of each active barcode type. You should evaluate the scanning rectangle size for each barcode type in use to determine the most appropriate setting for your use case.

2016
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.

Q12.Why does the camera display open slowly while using the Android Phonegap plug-in?

Slow camera initialization is most noticeable on Samsung devices, especially when the scanner orientation is different from the Phonegap screen from which it is called. In order to speed-up decoder initialization while using the Phonegap Android plug-in in portrait mode, you need to specify the following in your AndroidManifest.xml:

<activity android:configchanges="orientation|keyboardHidden" android:name="com.manateeworks.ScannerActivity" android:screenOrientation="portrait" android:theme="@android:style/Theme.NoTitleBar.Fullscreen"></activity>

 

2016
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.

Q13.Is your iOS library bitcode enabled?

 

 

Yes. Even though our libraries and iOS sample applications are packed without bitcode enabled (keeping compatibility with older Xcode and iOS versions), you can download bitcode enabled library files from HERE.

iOS
2016
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.

Q14.What is device registration and how does it work?

When a Barcode Scanner SDK license is purchased, it includes a set number of mobile devices the software can be used on (for example, 5000). The first time the SDK is used on a device, it sends a light weight, encrypted message to the Manatee Works license service to "register" the device. A trial license can be used on up to 100 devices.

2016
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.

Q15.Does the Barcode Scanner SDK require an Internet connection?

No. The SDK may periodically attempt to communicate with the Manatee Works licensing service to register a device or update license information, but if an Internet connection is not available, the SDK will simply defer this operation and continue to function normally.

2016
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.

Q16.What information does the SDK share with the license service?

The SDK licensing component sends only information about the license key, SDK version and features, the name of the application using the SDK, and some basic device information (make, model, and a pseudo random identifier Manatee Works uses to register the device with the license). The component never collects any personally identifiable information or usage data.

2016
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.

Q17.Are any code changes required to update to version 3.0 of the Barcode Scanner SDK?

Yes! But only a simple one. 

The MWBregisterCode() function has been deprecated. Instead, to initialize and enable the SDK with your license key, use the MWBregisterSDK() function that accepts a license key as its single parameter. The license key will be provided to you by Manatee Works upon evaluation or purchase.

NOTE: License keys issued prior to version 3.0 of the SDK are not supported; you must use the license key issued by the Manatee Works Developer Network when you purchased version 3 of the SDK (or requested a trial license). Additionally, only a single key is issued as all licensed features are represented in that single key (versus having individual keys for each barcode type as prior to version 3).

If you purchased a license prior to version 3.0, and would like to upgrade, please contact us at sales@manateeworks.com for eligibility and pricing.

2016
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.

Q18.Can I have a cropped (i.e, partial screen) camera image preview using the PhoneGap plugin?

Yes.

The default method for camera initialization - scanner.startScanning() - can be provided a rectangle, specified in screen percentage, for the cropped image. 

For example:

scanner.startScanning( 10,10,80,80 )

This will only display 80% of the image width and height. 

For more details, refer to the Manatee Works Barcode Scanner SDK Plugin for PhoneGap.

2016
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.
2016-09-16
2016-09-22
https://manateeworks.com/frequently-asked-questions
Frequently Asked Questions
ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.

Barcode Scanner SDK Features and Capabilities

Developing practical applications is challenging. That’s why we've developed a straight-forward barcode scanner software development kit (SDK) that boasts the most powerful scanning experience available for integration. It offers developers a simple, flexible, dynamic decoding experience, while still allowing for maximum control and flexibility over the user experience (UX). The Manatee Works Barcode Scanner SDK was built BY developers FOR developers... with the goal of making all your applications practical.

As a tool developed with the retail, manufacturing, government, healthcare, commercial services, and transportation industries in mind, our scanning solutions are built around efficiency for the end-user, as well as simplicity for the application developer. We understand that the enterprise is continually looking for opportunities to increase efficiency. Therefore, we have developed the ultimate single-handed scanning solution aimed at maximizing every promise of a return on investment.

ManateeWorks info@manateeworks.com
Mobile apps need to be increasingly more engaging to succeed. Manatee Works can help. Our mobile barcode scanner SDK is available on all major mobile development platforms.