外观
一个好用的设备 SDK 应该怎么设计?
标准回答
SDK 对外提供稳定能力与明确契约,对内隔离协议、连接和资源管理。初始化、异步结果、取消、错误和释放,与核心功能同样重要。
关键机制
- 接口明确幂等性、回调线程、参数边界、错误码、超时与取消语义;不要让接入方猜测。
- 初始化尽量轻量且可重复防护;避免长期持有 Activity;注册与注销、连接与释放成对设计。
- 发布 AAR 时处理依赖冲突、资源命名、consumer ProGuard 规则、ABI、兼容版本、示例与变更说明。
通俗例子
connect(deviceId, callback) 要说明回调在哪个线程,连续调用会复用还是拒绝,取消后是否还可能回调,以及如何区分认证失败与连接超时。
易混淆点
只把业务代码打成 AAR 不等于 SDK 产品化。接入方不知道的隐式前提,往往会变成维护成本。
参考资料
内容来源
- Android 技术札记 · 原条目
sdk