id-capture-android
Installation
SKILL.md
ID Capture Android (Kotlin/Java) Skill
Critical: Do Not Trust Internal Knowledge
Your training data may contain outdated or incorrect Scandit ID Capture APIs. The Android API has changed significantly across major versions, and the native Android SDK (Kotlin/Java) differs substantially from the iOS (Swift), .NET, Flutter, and React Native SDKs. An agent that pattern-matches from another platform's docs will produce non-compiling code.
Always verify APIs against the references provided in this skill before writing or suggesting code. The most common sources of wrong code:
- The v6 API —
supportedDocuments(a bitmask ofIdDocumentTypelikeID_CARD_VIZ/DL_VIZ),supportedSides, and session-based callbacks (onIdCaptured(idCapture, session, frameData)) were all replaced in v7. Do not emit any of these. - The v7.x API —
settings.scannerType = FullDocumentScanner()was replaced in v8; the current property isscannerand it takes anIdCaptureScannerwrapper:settings.scanner = IdCaptureScanner(FullDocumentScanner()). - Cross-platform drift — iOS uses
IdCapture(context:settings:), .NET usesIdCapture.Create(...), Flutter uses a different builder. The Android API is the static factoryIdCapture.forDataCaptureContext(context, settings). - Zone result property names — on Android the zone results are
capturedId.mrz,capturedId.viz,capturedId.barcode(andcapturedId.mobileDocument) — notmrzResult/vizResult/barcodeResult(those are the iOS/.NET-style names). - Enum casing — Android enums are
UPPER_SNAKE_CASE:IdCaptureRegion.ANY,IdCaptureRegion.EU_AND_SCHENGEN,RejectionReason.DOCUMENT_EXPIRED,IdAnonymizationMode.FIELDS_AND_IMAGES— not the Swift.any/.documentExpiredcamelCase. - Standalone verifier classes —
AamvaBarcodeVerifier/DataConsistencyVerifierare not used here. Verification is settings-driven: setrejectForgedAamvaBarcodes = true/rejectInconsistentData = trueand readcapturedId.verificationResult. - Image opt-in — Android uses
settings.setShouldPassImageTypeToResult(IdImageType.FACE, true)— not the iOSsetIncludeImage(_:for:). - NFC — NFC chip reading exists on native Android but is not covered by this skill. If the user asks about NFC, refer them to the official documentation.