1. Kotlin
  2. Release Notes

Kotlin

Release Notes

v2.4.32 (Jan 1, 2026)

📝 Summary

Camera orientation lock and model version API for better control and debugging

🌟 New Features

Camera Orientation Lock - Control camera orientation behavior for consistent scanning

  • CameraOrientationMode enum with AUTO, PORTRAIT, LANDSCAPE, and SENSOR modes
  • CameraSettings.orientationMode property to configure orientation behavior
  • AUTO mode: Camera follows device rotation (default behavior)
  • PORTRAIT mode: Locks camera to portrait orientation regardless of device rotation
  • LANDSCAPE mode: Locks camera to landscape orientation regardless of device rotation
  • SENSOR mode: Follows device physical sensor orientation
  • Scanning overlays automatically align with locked orientation
  • Useful for workflows requiring consistent scanning behavior (documents, labels, barcodes)

Model Version API - New API to retrieve exact version of loaded models

  • ModelManager.getModelVersion() - Returns version string of downloaded models (e.g., "2025-05-05")
  • Useful for debugging, logging, feature validation, and telemetry
  • Returns null if model not downloaded
  • Main-safe suspend function

⚙️ Improvements

Barcode Scanning Performance - Enhanced temporal validation system

  • Reduced bounding box removal time by 66-75% (from 300-500ms to 100-150ms)
  • Fixed flickering issues when scanning multiple barcodes
  • Implemented BarcodeTracker with timestamp-based tracking
  • Asymmetric thresholds: 2 frames to appear, 100ms to disappear
  • More responsive and stable barcode detection experience

v2.4.31 (Dec 15, 2025)

📝 Summary

Model Management APIs and Camera Control APIs added

🌟 New Features

Model Management APIs - A new API system for managing the OCR model lifecycle

  • ModelManager.initialize() - Initialize model management
  • ModelManager.downloadModel() - Download models with progress tracking and cancellation support
  • ModelManager.loadModel() - Load models into memory
  • ModelManager.unloadModel() - Unload models from memory
  • ModelManager.checkModelUpdates() - Check for and optionally download model updates
  • ModelManager.isModelLoaded() / ModelManager.isModelDownloaded() - Query model status
  • ModelManager.getModelInfo() - Retrieve detailed model information
  • ModelManager.deleteModel() - Remove downloaded models
  • ModelLifecycleListener - Monitor download progress and lifecycle events

New data classes

  • DownloadProgress
  • ModelInfo
  • ModelUpdateInfo

New exception types

  • ModelException
  • ModelNotFoundException
  • ModelDownloadException

Camera Control APIs - Direct access to the camera for advanced configuration

  • VisionCameraView.getCamera() - Retrieve the CameraX Camera object for direct control (Android equivalent of iOS AVCaptureDevice)
  • VisionCameraView.capturePhotoWithSettings() - Capture photos using custom camera settings
  • Direct access to: Zoom, Torch, Exposure, Focus via the Camera object

v2.4.30 (Dec 15, 2025)

📝 Summary

Memory-efficient issue reporting, iOS parity features, and critical bug fixes

🌟 New Features

  • Memory-Efficient Issue Reporting API with file-based image storage and lazy loading
  • Coroutine support for async operations
  • getExtractedData() method in ScannedCodeResult
  • getStringValue() method in ScannedCodeResult
  • Enhanced OCR methods for cross-platform compatibility

⚙️ Improvements

  • Enhanced ScannedCodeResult structure for iOS compatibility
  • Enhanced key-value extraction accuracy and performance
  • Improved courier signal detection logic
  • Improved error handling across SDK

🐛 Bug Fixes

  • Critical: Fixed crash when using ModelManager.loadModel() with shipping label models
  • Improved error handling in model download and configuration processes
  • Improved stability and error handling

v2.4.29 (Nov 19, 2025)

📝 Summary

KV Classifier improvements and courier signal detection enhancements

⚙️ Improvements

  • KV Classifier Client - Major refactoring and enhancements for improved key-value model processing
  • Refactored courier signal detection logic for better maintainability

v2.4.28 (Nov 19, 2025)

📝 Summary

Bug fixes and improvements


v2.4.27 (Nov 19, 2025)

📝 Summary

Bug fixes


v2.4.26 (Nov 17, 2025)

📝 Summary

Paccar Courier support and iOS-Android compatibility improvements

🌟 New Features

  • Added Paccar Courier support
  • Rule-based key-value information extraction

⚙️ Improvements

  • LanterDS changes for Paccar Courier
  • iOS and Android compatibility enhancements

v2.4.25 (Nov 12, 2025)

📝 Summary

Paccar Courier added and response format updates

🌟 New Features

  • Added Paccar Courier
  • Added tests for verifying responses

⚙️ Improvements

  • Updated response formats to match iOS SDK

v2.4.24 (Oct 31, 2025)

📝 Summary

ProGuard rules improvements

⚙️ Improvements

  • Added ProGuard rules to keep callback classes

v2.4.23 (Oct 23, 2025)

📝 Summary

Consistent and fuller JSON responses, barcode values with bounding boxes for indications

⚙️ Improvements

  • JSON response of on-device AI processing is more consistent and complete
  • Instead of Rect, we're using ScannedCodeResult in onIndicationsBoundingBoxes

v2.4.22 (Sep 27, 2025)

📝 Summary

Blur detection and bounding boxes improvements added

⚙️ Improvements

  • Image sharpness score callback added.
  • Bounding boxes extraction improvements are added in JSON result
  • Improved purchase order detection

v2.4.20 (Sep 23, 2025)

📝 Summary

Blur detection and bounding boxes for regex results added

⚙️ Improvements

  • When an image is detected as blur, it won't be used for prediction
  • Blur image callback added
  • Bounding boxes of regexes are added in JSON result
  • Improved purchase order detection

v2.4.19 (Sep 20, 2025)

📝 Summary

Blur detection and bounding boxes for regex results added

⚙️ Improvements

  • When an image is detected as blur, it won't be used for prediction
  • Blur image callback added
  • Bounding boxes of regexes are added in JSON result

v2.4.17 (Sep 16, 2025)

📝 Summary

Minor release


v2.4.16 (Sep 4, 2025)

📝 Summary

SLNano model introduced

⚙️ Improvements

  • Custom SLNano model for very quick response.

v2.4.15 (Sep 1, 2025)

📝 Summary

Extended response added in the on-device response of Shipping Label and Item Label

⚙️ Improvements

  • Bounding boxes of each entry
  • Confidence of each entry
  • Extraction type of each entry

v2.4.14 (Aug 27, 2025)

📝 Summary

Improved detection of tracking number and provider name for Volvo.

⚙️ Improvements

  • Volvo courier AI improvements added

v2.4.13 (Aug 15, 2025)

📝 Summary

Improved Shipping Label data sync API and adding more data in to the telemetry API

⚙️ Improvements

  • Shipping Label sync API now sends address information, if retrieved
  • If network call to server responds but with unexpected response, it is reported through the error reporting API call

v2.4.12 (Aug 13, 2025)

📝 Summary

Phone number extraction improvements, and sender receiver name processing improved. Other minor improvements in Sync API calls.

⚙️ Improvements

  • Phone number extraction improved
  • Name processing improved
  • Metadata field added in IL (item label) Sync API
  • On-device response contains the model version ID

v2.4.6 (Jul 30, 2025)

📝 Summary

New Item Label model added that can extract Sender/Recipient information

⚙️ Improvements

  • Item Label model updated to extract sender/recipient information

🐛 Bug Fixes

  • Image rotation issue on some devices has been fixed

v2.4.2 (Jul 16, 2025)

📝 Summary

On-Device response now contains confidences and bounding boxes of each field. If any information is extracted from GS1 barcodes, it is used in the on-device response. A race-condition was also resolved that was causing some unknown crashes. Gradle version improved and Android 16 support added.

🌟 New Features

  • Confidences of every field
  • Bounding boxes of every field

⚙️ Improvements

  • GS1 barcode information is added in on-device response
  • Error handling improved

🐛 Bug Fixes

  • A race-condition is resolved using Mutex

🗒️ Notes

This version supports Android 16.


v2.3.5 (Jul 3, 2025)

📝 Summary

On-device models are more customizable, courier tracking number detection improved, crash reporting improved

🌟 New Features

  • On-Device models can be further customized. Client app can request what information to extract.

v2.3.4 (Jun 24, 2025)

📝 Summary

Country name detection improvement

⚙️ Improvements

  • Fuzzy search algorithm is improved to get better results when looking for country

v2.3.3 (Jun 12, 2025)

📝 Summary

Sync API for Item Label has been introduced in this version

🌟 New Features

  • Sync API for Item Label

v2.3.2 (May 23, 2025)

📝 Summary

Minor improvements with For AccountId, Shipment Date and weight extraction and improved rotation of images on capture.

⚙️ Improvements

  • AccountId, Shipment Date and weight extraction improvements
  • Captured image rotation aware of camera orientation

v2.3.1 (May 19, 2025)

📝 Summary

An issue of PriceTag bounding boxes fixed

🐛 Bug Fixes

  • Bounding boxes of PriceTag

v2.2.4 (May 6, 2025)

📝 Summary

This release includes changes in how indications are received, template creation flow is improved, item label model updated and around 28 new couriers added.

🌟 New Features

  • Bounding boxes of barcodes, QR codes and document
  • Item label model updated
  • 28 new couriers

⚙️ Improvements

  • Template creation flow improved
  • Processing speed improved by reducing number of calculations

v2.2.1 (Apr 19, 2025)

📝 Summary

PriceTag and ItemRetrieval features enabled

New Features

  • PriceTag
  • ItemRetrieval

v2.2.0 (Apr 10, 2025)

📝 Summary

This version has Barcode symbology added. When user scans a barcode or QR code, we send the type of barcode along with the barcode result.

⚙️ Improvements

  • Barcode symbology is now being sent to client

🐛 Bug Fixes

  • NPE on some specific barcodes fixed

v2.1.14 (Apr 8, 2025)

📝 Summary

This version has Sentry SDK added. Any unhandled crashes will now be sent to our Sentry Dashboard

⚙️ Improvements

  • Sentry SDK added in VisionSDK

v2.1.13 (Mar 25, 2025)

📝 Summary

Support up to Android 23 added. This will help with expo but no one can actually use VisionSDK on Android 28 or lower.

⚙️ Improvements

  • Error improvement when client app accesses something from VisionSDK without initializing it first

v2.1.12 (March 13, 2025)

📝 Summary

This version contains log file management. Client app actions and processes are logged in a file. And then client app can share those logs with PackageX, should they need to.

⚙️ Improvements

  • Log files management

v2.1.5 (Feb 10, 2025)

📝 Summary

This release has two minor changes. In telemetry API, we're now sending improved name and model of device and image resizing is now optional for users when making API calls.

⚙️ Improvements

  • Improved device model name in telemetry API
  • Resizing option available for client app