Securepass
使用 NFC 读取护照数据的 Flutter 应用
步骤
为了使应用程序能够编译和运行,flutter 模块和 android 模块都需要位于同一个文件夹中
1- 在 flutter 模块中运行
flutter pub get
2- 从 android 模块编译和运行应用程序
关于
此应用程序是 flutter 与原生 android 模块的集成。使用平台方法通道和 GetX 库 将数据从原生 android 模块传递到 flutter 模块,原生 android 模块使用 JMRTD 库对护照芯片进行身份验证并将数据发送到 flutter 模块。
功能
- 实时 MRZ 扫描和解析
- 使用 NFC 与护照芯片进行身份验证并读取 DG1 和 DG2
- 将 DG2 文件解析为 flutter 可接受的 JPEG base64 格式
实施
此应用程序遵循 e-Passport NFC Reader JMRTD 实现
依赖项
请注意,该应用程序包含以下第三方依赖项
- Google Ml kit
- JMRTD – LGPL 3.0 许可证
- SCUBA (Smart Card Utils) – LGPL 3.0 许可证
- Spongy Castle – MIT 型 Bouncy Castle 许可证
- JP2 for Android – BSD 2-Clause 许可证
- JNBIS – Apache 2.0 许可证