# authkmp **Repository Path**: sun-Penghu/authkmp ## Basic Information - **Project Name**: authkmp - **Description**: No description available - **Primary Language**: JavaScript - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-17 - **Last Updated**: 2026-07-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AuthKmp(客户端 + 后端样例) Kotlin Multiplatform 工程:Android 客户端(Compose)、**C++ 鉴权后端**(`project/code/backend-c`)、共享接口模块。 --- ## 当前实现进度(周报摘要) ### 已实现 | 模块 | 说明 | |------|------| | **登录 / 注册 / 找回密码** | 相关界面已搭好,流程可在 App 内走通 | | **邮箱注册与登录** | **已接入后端**(SMTP 验证码、邮箱账号与后端贯通,按现有接口联调) | | **手机号注册与登录** | **空实现 / 占位**(UI 在,后端逻辑或接口未接上,可作演示或后续排期) | | **设备** | **设备列表页、设备详情页(含地图等 UI)** 已实现,注重界面与交互 | | **「我的」** | **个人 / 设置类页面** 已实现(含通用设置等) | ### 待办 / 未接通 | 模块 | 说明 | |------|------| | **设备等业务数据** | 列表 / 详情等 **仍以本地或占位数据为主**,**与后端持久化 / 业务接口的正式对接待接入** | | **手机账号体系** | 待后端能力就绪后对齐接口与校验逻辑 | 以上为阶段性状态,迭代时请以实际代码与接口为准更新本段。 --- ## 工程入口与文档 - **发给同事的协作需求(短信 / 设备接口 / 推送等)**:[`外部协作需求说明.md`](外部协作需求说明.md)(仓库根目录) - **Android Studio**:可直接 **Open 本仓库根目录 `AuthKmp`**(根目录已有 `settings.gradle.kts`,模块映射到 `project/code/…`);也可 **Open `project/code`**(与 SVN 交付一致),二选一即可。 - **Gradle 命令行**:在 **`AuthKmp` 仓库根** 或 **`project/code`** 下执行 `gradlew` 均可(两处 Wrapper 需保持版本一致,升级时记得同步)。 - **交付目录索引**:[`project/README.md`](project/README.md) - **产品待办 / 占位项**:[`project/DOCs/产品待办清单.md`](project/DOCs/产品待办清单.md) - **后端本地运行**:[`project/code/backend-c/后端运行.md`](project/code/backend-c/后端运行.md)(SMTP 可放在 `project/code/backend/smtp.local.properties`) - **环境与测试**:[`project/环境说明/环境说明.md`](project/环境说明/环境说明.md)、[`project/测试说明/测试说明.md`](project/测试说明/测试说明.md) **本地配置(不入库):** `local.properties` 放在 **`AuthKmp` 仓库根**(从根打开 AS 时)或 **`project/code`**(只打开子工程时);`api.base.url`、`amap.api.key`、**MQTT**(见下)写在其中。邮箱相关后端配置见 `project/code/backend/` 下的 `smtp.local.properties` 说明。 ### App 连接 MQTT(设备实时数据) 在 `local.properties` 中配置(改后需 **Gradle Sync** 并重装 App): ```properties mqtt.enabled=true mqtt.host=192.168.1.100 mqtt.port=1883 mqtt.ssl=false mqtt.username= mqtt.password= mqtt.topic.subscribe=test/app_api/+ mqtt.topic.geofence.publish=test/app_geofence/{userId}/{deviceId} mqtt.payload.format=platform ``` - 未开启 MQTT 时设备页仍使用内置 Mock 数据。 - **MQTT / 围栏 / 报文格式 / 联调(唯一入口)**:[`docs/App与平台联调规范.md`](docs/App与平台联调规范.md)