E6.14.4offline data completeness设计

长期离线可用性取决于本地数据的完整程度

别名: 离线能用多久 · local cache · 不完整离线

概念解释

断线几秒和断线几小时不是同一种产品状态。长期离线能不能继续工作,取决于这台设备上已经有多少、多新的数据:打开过的文档、缓存的列表、未下载的附件。提示需要把「现在还能做什么」限制在本地实际拥有的范围里,而不是用一张通用离线横幅暗示整个应用仍完整。可用性不是离线模式的开关,是缓存清单。

机制

短离线时,用户还在刚才那一屏上,工作记忆和屏幕上的像素都还在,本地缺什么不明显。时间一长,人会走到未曾打开的对象、搜索未缓存的集合、打开只在云端的附件。每一步都在拿一个不存在的本地副本。若界面仍用同一条「离线」覆盖所有这些尝试,失败会东一块西一块地冒出来,用户无法建立「离线边界」。把完整程度说出来——「仅已打开的 4 份可读」「搜索不可用」「附件需联网」——等于画出一张地图,人把任务收束在地图里,而不是在地图外撞墙。完整程度还会随时间变差:缓存过期、存储被系统清掉,长期离线的可用性是一条下降曲线,提示应跟着改,而不是第一小时和第十小时同一句话。

边界

刻意设计的离线优先应用(本地即主存储)完整程度高,提示应反过来强调「尚未同步」而不是「功能残缺」。受监管或加密的数据可能根本不允许完整缓存,长期离线在这些对象上应直接不可用,不要假装缺的只是网。多设备里「这台」的完整程度不等于「用户的」完整程度,文案要带设备或「本机」。只读的完整缓存和可写的完整缓存也不是同一档,能读不能写时要分开说。

怎么落地

  • 离线提示按本地实际拥有列出能做 / 不能做,而不是一句「当前离线」。
  • 打开未缓存对象时明确「本机没有这份」,不要用通用加载失败。
  • 缓存被清或过期时更新那张能做清单;长时间离线后再次声明边界。
  • 验证:只缓存一两个对象,断网一小时再四处点。用户若无法预判哪会打开哪会失败,完整程度就没被提示出来。

延伸

  • 同组E6.14.1 离线状态需要在操作前而非提交失败后提示 · E6.14.2 断线期间的操作应明确说明是否会排队重试 · E6.14.3 恢复连接后应主动提示并同步离线期间的变更
  • 相邻E6.06 空状态 · E6.10 错误页与降级页 · E6.04 全局状态提示
  • 站内检索offline cache · local completeness · offline capability

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/E6.14.4