Skip to content

Mobile ID SDK

The Mobile ID SDK is a library that lets you implement Mobile ID functionality in a custom app. The SDK enables mobile devices to act as secure credentials for access control, time & attendance, and or similar card-reading applications by transferring secure credentials via Bluetooth Low Energy (BLE) to readers.

Key features

  • Cross-platform: Supporting both Android and iOS
  • BLE-based: Uses Bluetooth Low Energy for communication with readers
  • Secure: Cryptographic signed credentials transferred over AES128-GCM connection
  • Automatic permission handling: SDK manages BLE permissions automatically
  • Background operation: Supports background BLE advertising on iOS
  • Built-in logging: Comprehensive logging allows BALTECH to support even complex problems
  • Reactive APIs: APIs for modern reactive programming

Requirements

The SDK is available for XCode (Swift/Objective-C) and Android Studio (Kotlin/Java).

iOS:

  • iOS 13.0+
  • Physical device with BLE support (BLE not available in simulator)

Android:

  • Android SDK 28+
  • Device with BLE support

App notes

Complete working examples are available at
https://github.com/baltech-ag/MobileIDSDK-pkg/tree/master/appnote.

  • The Swift app note demonstrates iOS integration using Swift and UIKit.
  • The Kotlin app note Demonstrates Android integration using Kotlin and Compose.

Both app notes showcase best practices and complete integration workflows.

Developer integration guide

Best practices summary

  1. Security: Derive credentials on server side
  2. Support: Integrate sendLogs() method
  3. Permissions: Let SDK handle automatically
  4. Storage: Use platform secure storage (Keychain/EncryptedPrefs)
  5. Logging: Enable debug mode during development
  6. Testing: Test on physical devices (BLE not available in simulators)
Title