Android通信工具(kotlin)

前言

因为经常调试设备,所以弄一下常见的app进行工具调试

开始

演示

GitHub地址

项目架构

复制代码
com.example.testseewo/
├── ui/                          # UI层
│   ├── MainActivity.kt          # 主Activity
│   ├── DeviceApp.kt             # 应用导航入口
│   ├── home/
│   │   └── DeviceHomeScreen.kt  # 设备首页
│   ├── card/
│   │   ├── CardReaderScreen.kt  # 读卡器页面
│   │   └── CardReaderViewModel.kt
│   ├── camera/
│   │   ├── CameraScreen.kt      # 摄像头页面
│   │   └── CameraViewModel.kt
│   └── wiegand/
│       ├── WiegandScreen.kt     # 韦根页面
│       └── WiegandViewModel.kt
│
├── domain/                      # 领域层
│   ├── model/                   # 数据模型
│   │   ├── CardInfo.kt
│   │   ├── CameraInfo.kt
│   │   ├── DeviceStatus.kt
│   │   └── WiegandCard.kt
│   ├── repository/              # 仓库接口
│   │   ├── CardRepository.kt
│   │   ├── CameraRepository.kt
│   │   ├── DeviceRepository.kt
│   │   └── WiegandRepository.kt
│   └── usecase/                 # 用例
│       ├── ReadCardUseCase.kt
│       ├── CaptureImageUseCase.kt
│       └── ReceiveWiegandUseCase.kt
│
├── data/                        # 数据层
│   ├── repository/              # 仓库实现
│   │   ├── CardRepositoryImpl.kt
│   │   ├── CameraRepositoryImpl.kt
│   │   ├── DeviceRepositoryImpl.kt
│   │   └── WiegandRepositoryImpl.kt
│   └── datasource/
│       └── HardwareDataSource.kt
│
├── hardware/                    # 硬件抽象层
│   ├── card/
│   │   ├── CardReader.kt        # 读卡器接口
│   │   └── CardReaderState.kt
│   ├── camera/
│   │   ├── CameraManager.kt     # 摄像头接口
│   │   └── CameraState.kt
│   ├── wiegand/
│   │   ├── WiegandReader.kt     # 韦根接口
│   │   ├── WiegandDecoder.kt
│   │   └── WiegandParser.kt
│   ├── serial/
│   │   └── SerialManager.kt     # 串口接口
│   └── gpio/
│       └── GPIOManager.kt       # GPIO接口
│
├── vendor/                      # 厂商适配层
│   └── seewo/
│       ├── SeewoCardAdapter.kt      # 希沃读卡器适配器
│       ├── SeewoCameraAdapter.kt    # 希沃摄像头适配器
│       ├── SeewoGPIOAdapter.kt      # 希沃GPIO适配器
│       └── SeewoWiegandAdapter.kt   # 希沃韦根适配器
│
├── core/                        # 核心工具层
│   ├── callback/
│   │   └── DeviceCallback.kt
│   ├── exception/
│   │   └── HardwareException.kt
│   └── utils/
│       └── Logger.kt

功能模块

复制代码
## 功能模块

### 1. IC卡/RFID读卡模块

- 支持 NFC、RFID、IC卡
- 实时刷卡事件监听
- 卡类型识别
- 异常处理

### 2. 摄像头模块

- 基于 CameraX 实现
- 前后摄像头切换
- 拍照功能
- 预留人脸识别接口

### 3. 韦根门禁模块

- 支持 Wiegand26/34 格式
- GPIO 数据采集
- 数据解析和校验
- 卡号转换

### 4. 串口通信模块

- 串口数据收发
- 波特率配置
- 实时数据监听

### 5. GPIO控制模块

- GPIO 输入输出
- 状态监听
- 资源管理
相关推荐
limuyang22 分钟前
PDF Viewer KMP(基于 chrome 的 PDFium 内核)
android·kotlin
心平气和量大福大4 小时前
android-控件-搜索框SearchView
android·gitee
2601_962177134 小时前
【MySQL篇】聚合查询,联合查询
android·java·mysql
壮哥_icon4 小时前
【Android】批量 VectorDrawable 动态分别修改 fillColor 和 strokeColor 的踩坑与终极解决方案
android
齐天qaq5 小时前
Android 系统 APK 分区与权限
android
心平气和量大福大5 小时前
android-控件-多选框CheckBox
android·gitee
pengyu7 小时前
【Kotlin 协程修仙录 · 大乘境 · 初阶】 | 跳出三界:协程在 KMP 与后端开发中的跨平台之道
android·kotlin
XiaoLeisj7 小时前
Android Memory Profiler:堆内存指标、内存抖动与泄漏定位
android·性能优化·内存抖动·内存泄露·memory profiler
未来猫咪花7 小时前
Everything is ViewModel:让状态管理回到对象世界
android·flutter·ios