On this page

Stuck? Open a support ticket and the barKoder team will help. Open a ticket

Batch MultiScan

What is Batch MultiScan for iOS? #

Batch MultiScan is a feature of the barKoder Barcode Scanner SDK that enables batch scanning of multiple barcodes without interrupting the scanning process. It allows users to decode various types and sizes of barcodes in a single session, greatly enhancing efficiency for bulk scanning tasks.

This feature is available on the iOS native platform and can be enabled within applications that employ the iOS SDK.

How to enable it? #

This is done by disabling the automatic closing of the scanning session after a result is obtained.

The feature also includes an option to set a caching duration ( barkoderView.config?.setMulticodeCachingDuration(3000)) for the codes scanned and the ability to enable multi-code caching (barkoderView.config?.setMulticodeCachingEnabled(true)).

The duplicates delay and maximum results count can also be adjusted. For best results, it is recommended to have the decoding speed and barKoder resolution set to normal.

Swift
private func setMultiScan() {
    // In order to perform scanning, config property need to be set before
    // If the license key is not valid, results are marked (Unlicensed)
    barkoderView.config = BarkoderConfig(licenseKey: "LICENSE_KEY") { licenseResult in
        print("Licensing SDK: \(licenseResult)")
    }

    // Enabling MultiScan
    barkoderView.config?.closeSessionOnResultEnabled = false
    barkoderView.config?.setMulticodeCachingDuration(3000)
    barkoderView.config?.setMulticodeCachingEnabled(true)
    barkoderView.config?.decoderConfig?.duplicatesDelayMs = 0
    barkoderView.config?.decoderConfig?.maximumResultsCount = 200

    // For best result decoding speed should be normal, and barkoder resolution should be HD
    barkoderView.config?.decoderConfig?.decodingSpeed = DecodingSpeed.init(1)
    barkoderView.config?.barkoderResolution = .HD
}
If you don't plan to use the app on older devices, you can safely set the decoding speed to SLOW. This will yield more reliable results. On modern phones, the slight decrease in speed is negligible compared to the improved reliability.