Version 3001.0.0 of the BlinkCard Flutter SDK.
- Updated to Android SDK v3001.0.0 and iOS SDK v3001.0.0
Breaking changes
- Android build requirements: Applications integrating the plugin must compile with compileSdk 36 and use a compatible Android Gradle Plugin (8.9.1 or newer). The plugin is built with Kotlin 2.2.21 (Kotlin 2.1 or newer is required to compile against the native SDK).
Changes in Dart and API
- Renamed detection level settings to match the native SDK:
DetectionLevel→SensitivityLevelScanningSettings.tiltDetectionLevel→tiltSensitivityLevel
- Renamed the anonymization API to redaction:
AnonymizationMode→RedactionModeAnonymizationSettings→RedactionSettingsCardNumberAnonymizationSettings→CardNumberRedactionSettingsScanningSettings.anonymizationSettings→redactionSettings- Removed
cardNumberPrefixAnonymizationMode; card-number prefix redaction followsCardNumberRedactionSettings.mode.
- Renamed
CheckResult.notPerformedtoCheckResult.notAvailable('notAvailable'). This affects liveness check results andoverallCardLivenessResult. - Redaction defaults: If
ScanningSettings.redactionSettingsis not set, the native SDK 3001 redaction policy applies (card number and CVV redacted with four prefix and four suffix digits visible on the PAN; IBAN and cardholder name not redacted). To restore fully unredacted behavior, assignredactionSettingsexplicitly withRedactionMode.noneon the fields you need. - Step timeout: Default
BlinkCardSessionSettings.stepTimeTimeoutIntervalchanged from 15 seconds to 60 seconds (value is in milliseconds:60000). - SDK initialization (iOS): Resource download settings are passed via
resourcesConfiguration/ResourcesConfigon the native side. UseBlinkCardSdkSettingsfieldsdownloadResources,resourceDownloadUrl,resourceLocalFolder,bundleIdentifier, andresourceRequestTimeoutas before; see blinkcard_settings.dart. RedactionSettingsconstructor defaults: Default property values when constructingRedactionSettings/CardNumberRedactionSettingsin Dart now match the native session default redaction struct (PANfullResultwith four prefix and suffix digits visible, CVVfullResult, IBAN and cardholder namenone). OmittingScanningSettings.redactionSettingsstill uses the native SDK policy without sending a custom object.
Improvements
- Added
CardAccountResult.binCheckResult(CheckResult: pass, fail, or notAvailable). BIN check requires a license with the appropriate right and may be unavailable on some licenses. - Added
BlinkCardSessionSettings.inactivityTimeoutInterval(milliseconds, default10000; set to0to disable). Maps to session settings on iOS and UX settings on Android. - Added
ScanningUxSettings.allowScanSound(defaulttrue) to control scan success sounds. BlinkCardSdkSettings.resourceRequestTimeout(milliseconds) is now applied on Android as well as iOS. When omitted, the native default applies (30 seconds in SDK 3001, increased from 10 seconds on Android).- Default resource download URL and local folder when omitted: Android uses
ResourcesConfig.defaultResourceDownloadUrlanddefaultResourcesLocalFolderfrom the native SDK. iOS has no equivalent public statics; the Flutter plugin applies the same values asResourcesConfiginitializer defaults in the BlinkCard iOS SDK (https://models.cdn.microblink.com/resourcesandMLModels).
Native SDK improvements (no additional Flutter API)
The underlying Android and iOS SDK 3001 releases also include OCR, expiry-format, and Amex CVV fixes, updated resource-request timeout modeling, and other UX or custom-UI changes. Those behave according to the native SDK when using the default Flutter scanning UI.
- For details, see the Android v3001.0.0 and iOS v3001.0.0 release notes.
Migration from 3000.x
- Replace renamed types and properties in settings and result handling (
notAvailable, redaction naming,SensitivityLevel). - Review redaction: omit
redactionSettingsto use SDK defaults, or set explicitRedactionSettingsfor custom behavior. - Adjust expectations for step timeout (60s) and optional inactivity timeout (10s default).
- Ensure Android apps meet compileSdk 36 and current Kotlin/AGP requirements.
- Rebuild host apps after upgrading the plugin dependency.