验证状态:已源码核验、未联调(无 app 调用图);本页为概念边界对照页,不引入新端点,两个动作的全部契约以其链接的正本页为准(核验基线同各正本页:源码归纳 @ 2026-09-14)。
设备解绑与解除分享是两个不同概念:解绑终止设备直接拥有周期(所有权退场),解除分享只是分享投影退场(退出分享关系,不动所有权)。后端领域语言对此有明文边界:设备分享投影的接收方可取消或解除分享,但不通过该投影执行设备解绑——分享投影不得通过解绑退场。设备归属转移绑定的避免用语也同时包含这两者,三者互不可混。
deviceId(或 deviceShareId),并能从设备列表 / 分享记录列表分辨它的投影类型:state=bind 为自有设备(设备直接拥有投影),state=confirm share / To be confirm share 为分享来的设备(设备分享投影)。| 维度 | 设备解绑(unbind) | 解除分享(lift share) |
|---|---|---|
| 概念 | 终止当前用户个人空间的设备直接拥有周期 | 受赠方退出一条已接收的分享,分享投影退场 |
| 操作对象 | 设备直接拥有投影(自有设备,state=bind) |
设备分享投影(分享来的设备) |
| 端点 | 解绑个人空间设备 | 解除设备分享 |
| 谁可操作 | 设备直接拥有者(deviceId 在其租户内解析) |
分享接收方(deviceId 在其租户内解析,分享记录更新按 targetUsername 双重锚定) |
| 退场范围 | 整条拥有周期:同一设备号的全部非库存租户投影与全部分享记录一并软删 | 仅自己的分享投影与对应一条分享记录软删 |
| 所有权影响 | 属主失去该设备 | 属主保留设备,其余接收方不受影响 |
| 其他用户 | 由该设备派生的全部接收方一并失去设备;服务端经 JMS 通知相关用户刷新设备列表 | 发起方设备与其他分享不受影响;无实时通知 |
| 主要业务错误 | Inventory tenant cannot perform device unbinding;The data collection device does not exist |
The data collection device does not exist |
同场防混淆:撤销分享(撤销设备分享)是发起方对自己发出的分享的对称退场,不是解绑也不是解除分享;设备归属转移绑定(force / 授权码变化,见绑定设备)会先退场旧投影与活跃分享再重建归属——它既不是解绑也不是解除分享(概念页术语口径)。
state=bind;解绑后果(全部分享接收方同时失去设备)应提前告知用户。state=confirm share 的已确认分享走本出口;对 To be confirm share 的投影调用解除同样生效(未确认就退出,正本页「错误与边界」节)。force=true 或授权码变化),由新属主发起,不是由原属主「解绑 + 重绑」拼装。deviceId 解析、退场按设备号作用于整条拥有周期,而两个入口都不校验投影当前 state——对分享投影调用解绑不会得到「这不是你的设备」类拒绝,而是把属主的直接拥有投影与全部分享记录一并退场(属主与其他接收方同时失去设备)。这正是后端领域语言「分享投影不得通过解绑退场」的事实依据。App 侧必须在调用前按 state 判定设备来源:state=bind 才允许展示「删除设备」(解绑),分享来的设备只展示「移除分享」(解除)。state 判定预防。deviceShareId 当 deviceId 用、把发起方投影 ID 当受赠方投影 ID 用);投影已退场(撤销 / 解除 / 解绑 / 归属转移之后,含重复退场);他人租户的 ID(租户隔离视为不存在)。逐项核对定位键与投影类型后重试。status=1000,重新登录);Bean Validation 失败走请求校验出口(HTTP 400 / status=1002 族);判定口径见错误响应差异。