展会软件的可靠性三件套:崩溃自恢复、超时回待机、全屏锁定
展会、发布会现场只有那么几个小时,没有人有空蹲在那儿盯着一台设备。观众看完就走、讲解员在忙、技术人员可能同时管着十几台机器。
所以展会软件的可靠性优先级,高于功能丰富度。少一个炫酷动效没人在意,程序挂在那儿黑屏一小时就是事故。
这一篇讲三件几乎每台展会设备都该做、但经常被排在”有时间再说”的事。
一、崩溃自动恢复
这是三件里最重要的一条。
程序无论写得多稳,长时间运行总有意外——内存泄漏、驱动异常、某个边界情况没覆盖到。展会现场的特点是:它挂了之后,很可能几十分钟都没人发现。
要做的是:程序退出之后能自己起来。常见做法有几种:
| 做法 | 特点 |
|---|---|
| 守护进程/看门狗 | 独立进程盯着主程序,挂了就拉起 |
| 系统级的服务重启策略 | 依赖系统能力,配置简单 |
| 任务计划定时检查 | 最土但也最容易实现 |
注意几个容易忽略的点:
- 恢复后要回到可用状态,而不是停在某个中间页面。观众看到的应该是待机画面,不是一个空白窗口。
- 恢复要有节流。如果程序是启动就崩,无限重启会让机器卡死。加一个限制,比如短时间内重启超过几次就停下来并记录日志。
- 要留日志。自动恢复容易掩盖问题——现场看着一切正常,实际上一天崩了二十次。日志是唯一能发现这件事的途径。
二、无操作超时返回待机
观众看完就走,不会有人帮你退回首页。
如果没有超时机制,一台设备会永远停在上一个观众翻到的那一页。下一个观众过来看到的是半截内容,甚至是某个弹窗——这台设备的”迎客”能力就废了。
要做的是:一段时间无操作后自动回到待机页,播放循环片或首页。
超时时长怎么定:
- 太短:观众正在慢慢读,突然跳回首页,体验很差
- 太长:设备长时间停在无关页面
这个值应该做成配置项,现场按实际观众停留时长调。写死在代码里,现场想改就得重新打包——这一条在展会前的兵荒马乱里是很要命的。
三、全屏锁定与防误触
展会现场设备是完全暴露的,观众什么都可能碰到。要防的是:
1. 不能露出桌面、任务栏、地址栏
一旦露出来,观众可能点进别的程序、看到系统弹窗、甚至误操作。全屏模式是基本要求。
2. 不能被误触退出
要屏蔽常见的退出/切换手势和快捷键。触摸屏还要注意边缘手势——从屏幕边缘划入是很多系统的系统级手势,观众很容易无意中触发。
3. 要留一个隐蔽的退出方式
工作人员需要能退出来做维护。常见做法是连点某个角落若干次,或者组合键加密码。别做成显眼的退出按钮,也别完全没有退出方式——后者会逼得工作人员直接拔电源。
4. 系统弹窗要提前掐掉
系统更新提示、杀毒软件弹窗、低电量提醒,都可能在展会中途弹出来盖在界面上。这些要在筹备阶段就关掉,而不是指望它们不出现。
顺带说:内容更新方式
展会前内容改到最后一刻是常态。更新方式建议优先做离线导入——把内容包拷进去就生效,不依赖网络。
展馆的网络环境不可控,把内容更新做成依赖联网的,等于把风险交给了别人。等到现场发现连不上网、内容传不进去,那种被动是很难受的。
这三件事的共同点
它们都不增加任何”看得见的功能”,在演示时也体现不出价值。所以在排期紧张时最容易被砍掉——而它们恰恰是决定展会当天会不会出事的因素。
一个实际的建议:把这三条写进项目的验收清单,作为必做项而不是可选项。这样它们就不会在赶工期时第一个被牺牲掉。
现场验收怎么测
- 手动杀掉程序进程,看它多久能自己起来、起来后停在哪个页面
- 操作到某个深层页面然后不动,掐表看是否按预期回到待机
- 在触摸屏上乱划乱点,尤其试屏幕边缘手势,看能不能退出去
- 拔电源再上电(不是重启),验证完整的开机自启链路——具体见展厅播放器来电不自启
- 让不懂技术的人来用,他们能碰出你想不到的操作
常见问题
Q:展会软件最该做的可靠性措施是什么? A:崩溃自动恢复。展会现场程序挂了很可能几十分钟没人发现,能自己起来是最基本的保障。但要注意三点:恢复后要回到待机页而不是中间状态、重启要有节流避免无限循环、必须留日志(自动恢复会掩盖问题)。
Q:无操作超时多久合适? A:没有标准答案,取决于内容长度和观众停留习惯。关键是做成配置项,现场能随时调。写死在代码里,展会前想改就得重新打包,那种时候是没有时间的。
Q:全屏模式怎么防止观众误退出? A:屏蔽常见退出/切换快捷键和边缘手势,同时留一个隐蔽的退出方式给工作人员(比如连点角落或组合键)。不要做显眼的退出按钮,也不要完全没有——没有的话工作人员只能拔电源。
Q:内容更新用在线还是离线? A:展会场景优先离线导入。展馆网络不可控,把更新做成依赖联网的等于把风险交给别人。现场发现传不进内容的被动,是可以提前避免的。
这三条在某头部自主品牌汽车厂商车展项目里都是明确要求。无人值守相关的其他实操见远程运维专题,也可以直接联系我们。