AndroidAI使用心得
一、本周 AI 使用概况
本周在开发过程中持续使用 AI 辅助完成需求分析、代码设计、接口封装、问题排查和调试验证。AI 主要参与了自研 IoT 平台 SDK、P2P 通信、WebSocket 数据解析、设备指令封装、PW7 设备协议调试等相关工作(注:自研 IoT 平台已于2026年1月份完成,PW7 设备相关工作于4.23-4.30完成)。
整体来看,AI 在提升开发效率、减少重复代码、辅助协议理解、定位异常问题方面帮助较大,尤其适合处理协议类、数据解析类、状态机类和 SDK 封装类任务。
二、本周完成/推进的功能
1. 自研 IoT 平台 SDK
本周围绕自研 IoT 平台 SDK 进行了功能设计与代码实现(注:该平台已于2026年1月份完成),主要包括:
-
SDK 基础通信能力封装;
-
设备数据模型封装;
-
指令下发统一入口设计;
-
设备状态上报解析;
-
SDK 内部回调机制整理;
-
对上层业务提供更统一的设备操作接口。
AI 主要用于辅助设计 SDK 的代码结构、封装方式、命名规范,以及梳理不同设备能力之间的抽象边界。
2. P2P 通信与数据下发
完成/推进了 P2P 通信相关能力:
-
P2P 通道建立逻辑梳理;
-
指令下发数据结构封装;
-
P2P 数据发送流程整理;
-
下发结果回调处理;
-
异常场景处理逻辑补充。
AI 在这一块主要用于辅助分析通信流程,帮助整理 P2P 数据下发的调用链,减少重复封装代码。
3. WebSocket 和数据解析
本周继续完善 WebSocket 设备数据上报相关逻辑:
-
WebSocket 消息监听;
-
设备 ID 过滤;
-
上报数据分发;
-
dp 参数解析;
-
工作状态解析;
-
设备告警状态解析;
-
上报数据转换为业务 LiveData/状态对象。
AI 辅助点主要包括:
-
梳理 WebSocket 消息结构;
-
优化数据解析逻辑;
-
帮助区分不同 dp 字段的业务含义;
-
辅助排查重复上报、状态重复刷新等问题。
4. IoT 平台蓝牙配网
完成/推进 IoT 平台蓝牙配网相关工作:
-
蓝牙设备发现;
-
蓝牙连接流程;
-
配网参数组装;
-
Wi-Fi 信息下发;
-
配网状态回调;
-
配网失败场景处理。
AI 主要用于辅助整理蓝牙配网流程、异常场景处理,以及帮助检查配网过程中的状态流转是否完整。
5. IoT 平台快速建图、多地图及地图下载和加载
本周推进了地图相关核心能力:
-
快速建图指令封装;
-
建图任务状态上报解析;
-
多地图列表管理;
-
地图下载流程;
-
地图加载流程;
-
地图数据与设备状态关联;
-
地图切换相关逻辑整理。
AI 在该部分主要用于辅助拆解复杂业务流程,帮助梳理"指令下发 → 状态上报 → 地图数据获取 → UI 刷新"的完整链路。
6. IoT 平台定时任务
完成/推进 IoT 平台定时任务相关能力:
-
定时任务数据结构封装;
-
定时任务列表获取;
-
新增/修改/删除定时任务;
-
定时任务下发协议组装;
-
定时任务状态解析;
-
定时任务与业务 UI 的数据转换。
AI 主要用于辅助设计定时任务模型、封装通用转换方法,以及减少重复代码。
7. IoT 平台指令下发和上报封装实现
本周重点完善了 IoT 平台指令下发和上报解析的统一封装:
-
指令下发统一入口;
-
不同设备指令参数封装;
-
动态 dp 参数支持;
-
上报数据统一分发;
-
上报数据转换为业务状态;
-
错误回调和异常处理。
AI 帮助较大的点是:将分散的指令逻辑统一整理成更清晰的封装方式,提高后续设备接入和功能扩展效率。
8. PW7 设备指令下发和上报数据解析封装
针对 PW7 设备,完成/推进了设备协议相关封装(注:该部分工作于4.23-4.30完成):
-
PW7 设备指令下发;
-
dp31、dp33、dp34、dp35、dp37、dp38、dp39、dp40 等字段处理;
-
工作状态解析;
-
设备状态解析;
-
告警状态解析;
-
称重校准结果解析;
-
音量、设备提醒、拒绝执行等状态解析;
-
上报数据转换为业务状态对象。
AI 在 PW7 协议封装过程中主要用于辅助:
-
解析协议结构;
-
设计状态对象;
-
优化数据解析代码;
-
排查状态重复上报引起的 UI 闪烁问题。
9. PW7 称重校准、倒废砂、工作状态等核心指令调试
本周对 PW7 核心指令进行了调试(注:该部分工作于4.23-4.30完成),包括:
-
称重校准指令;
-
倒废砂指令;
-
工作状态上报;
-
停止任务状态;
-
设备告警状态;
-
集砂仓状态;
-
侧板状态;
-
防夹保护状态;
-
童锁开关状态;
-
设备勿扰开关状态;
-
设备勿扰时间段
-
集砂仓除臭开关状态;
-
集砂仓除臭时长;
-
清理模式状态;
-
设备音量;
-
延迟清理的时间间隔;
-
沉重校准和归位失败时间;
-
工作记录和警报封装;
-
添加设备页自动搜索设备;
-
任务执行结果解析。
AI 主要用于辅助分析日志、定位状态刷新链路、优化重复状态上报处理,并对 UI 闪烁,自动搜索设备等问题提供解决思路。
三、AI 在本周工作中的具体使用方式
1. 辅助代码设计
在 SDK、指令封装、数据解析等模块中,使用 AI 辅助进行代码结构设计,包括:
-
如何抽象设备能力;
-
如何封装指令下发;
-
如何解析复杂 dp 数据;
-
如何减少重复代码;
-
如何保证后续扩展性。
2. 辅助协议解析
对于 PW7 和 IoT 平台上报数据,AI 帮助分析协议格式,例如:
-
普通状态值;
-
JSON 格式 dp 数据;
-
类似 <status,timestamp,code> 的协议格式;
-
多字段设备状态协议;
-
指令结果状态码。
3. 辅助问题排查
本周使用 AI 排查了部分 UI 和状态同步问题,例如:
-
工作状态重复刷新;
-
DataBinding 重复触发;
-
Glide 重复加载导致图片闪烁;
-
WebSocket 重复上报导致 UI 多次刷新;
-
LiveData 同值重复 post 导致页面抖动。
4. 辅助代码优化
AI 帮助优化了部分代码实现方式,例如:
-
同值状态不重复刷新;
-
本地 drawable 不走 Glide;
-
使用 tag 避免重复加载图片;
-
避免重复注册监听;
-
增加状态校验,防止旧回调覆盖新状态。
四、AI 使用技巧和心得
-
先描述业务背景,再让 AI 给方案 直接问"怎么写代码"效果一般,先描述设备协议、业务状态、当前问题、日志表现,AI 给出的方案会更贴合实际。
-
协议类代码适合让 AI 辅助拆解 像 IoT 平台、PW7 设备这种协议字段较多、状态较复杂的场景,AI 可以帮助快速整理字段含义、状态流转和解析方法。
-
调试问题时,把日志和相关代码一起给 AI 本周排查 UI 闪烁、状态重复刷新时,把日志、BindingAdapter、XML 绑定代码一起给 AI,定位效率明显更高。
-
AI 适合做"第一版封装",但需要人工确认边界 AI 可以快速生成封装思路和代码结构,但涉及设备协议、状态码、业务规则时,仍需要人工确认协议准确性和边界场景。
-
对已有代码修改时,要强调"不影响原功能" 在让 AI 修改代码时,需要明确说明:只改指定问题;不影响原有逻辑;尽量小范围修改;修改后检查是否有 linter 错误。这样可以降低引入新问题的风险。
五、Coding 率评估
本周 AI 参与度较高,主要集中在协议解析、SDK 封装、问题定位和代码优化上。
估算本周 Coding 率:
-
AI 辅助代码生成/修改占比:约 80% - 90%
-
AI 辅助问题分析和方案设计占比:约 80% -90%
-
人工协议确认、联调、设备验证占比:约10% -20%
综合来看,本周 AI 对开发效率提升比较明显,尤其在重复封装、日志分析、状态流转梳理方面节省了较多时间。
六、本周 AI 使用收益
-
提高了 IoT 平台 SDK 封装效率;
-
加快了 P2P、WebSocket、设备指令等通信链路的整理;
-
降低了协议解析代码的重复工作量;
-
辅助定位了 UI 闪烁和状态重复刷新问题;
-
帮助优化了部分 DataBinding 和 Glide 使用方式;
-
提升了 PW7 设备核心指令调试效率;
-
对复杂状态上报的解析和封装有较大帮助。
七、存在的问题
-
AI 对具体设备协议不了解,需要人工提供协议样例和日志;
-
AI 生成的代码需要人工二次校验,不能直接完全依赖;
-
对复杂业务状态,AI 有时只能给通用方案,需要结合实际业务调整;
-
涉及设备真实联调时,AI 无法替代实际设备验证;
-
对已有项目结构不熟悉时,需要先提供足够上下文。
八、下周计划
下周计划继续使用 AI 辅助以下工作:
-
继续完善自研 IoT 平台 SDK;
-
优化设备指令下发和上报解析封装;
-
完善 PW7 设备异常状态和核心指令调试;
-
梳理更多通用设备能力抽象;
-
辅助排查联调过程中的协议和状态问题;
-
继续总结 AI 在 Android IoT 设备开发中的最佳使用方式。
九、总结
本周 AI 在 IoT 平台 SDK、P2P 通信、WebSocket 数据解析、蓝牙配网、地图能力、定时任务、PW7 指令封装与调试等工作中使用较多(注:自研 IoT 平台已于2026年1月份完成,PW7 设备相关工作于4.23-4.30完成)。整体来看,AI 对协议类开发、状态解析、代码封装和问题排查帮助明显,能够有效提升开发效率。
后续会继续将 AI 作为辅助开发工具,用于需求拆解、方案设计、代码生成、日志分析和问题定位,同时对关键协议和业务逻辑保持人工校验,确保功能稳定可靠。