前言

在自助售货机、智能柜、POS机、自助点餐机、工业平板等设备项目中,经常会听到客户提出这样的需求:

  • 用户不能退出应用

  • 不允许安装其他APP

  • 不允许进入系统设置

  • 开机自动进入业务系统

  • 设备只能运行指定应用

很多人会把这些需求统称为:

Kiosk Mode(专用终端模式)

那么 Kiosk 到底是什么?Android 又是如何实现的?

本文一次讲清楚。


什么是 Kiosk Mode

Kiosk(信息亭)最初来源于公共自助终端。

例如:

  • 自助售货机

  • 自助点餐机

  • 医院挂号机

  • 银行终端

  • 智能快递柜

  • 广告机

这些设备都有一个共同特点:

用户只能使用指定功能,无法操作系统本身。

因此衍生出了:

Kiosk Mode(专用终端模式)

简单理解:

普通平板
├─ 微信
├─ 浏览器
├─ 设置
├─ 应用商店
└─ 任意安装APP

Kiosk设备
└─ 指定业务APP

Kiosk 模式包含哪些能力

很多人认为:

Kiosk = 锁屏

实际上远不止如此。

完整 Kiosk 通常包含:

功能 说明
开机自启动 自动进入业务系统
应用白名单 只允许指定APP运行
禁止状态栏 下拉菜单不可用
禁止导航栏 返回键失效
桌面锁定 禁止切换Launcher
禁止安装应用 防止安装游戏等软件
禁止系统设置 用户无法修改参数
自动拉起应用 APP异常退出后恢复
远程管理 OTA升级、远程控制

Google 官方如何定义 Kiosk

Google 在 Android Enterprise 中定义了:

Android Enterprise

两种模式:

Single App Kiosk

单应用模式

设备只能运行一个APP

例如:

  • 点餐机

  • 广告机

  • 查询终端


Multi App Kiosk

多应用模式

允许多个APP
但必须在白名单内

例如:

业务APP
浏览器
支付APP
远程协助APP

Kiosk 常见实现方案

方案1:Launcher替换(最常见)

原理:

系统桌面
      ↓
自定义桌面
      ↓
业务APP

设备启动后直接进入自定义 Launcher。

优点:

  • 实现简单

  • 兼容性好

缺点:

  • 安全性一般

适用于:

  • 广告机

  • 展示屏


方案2:Lock Task Mode

Android 官方提供。

核心 API:

startLockTask();
stopLockTask();

效果:

  • Home键失效

  • Recent键失效

  • 返回键受控

适用于:

Android 5.0+

优点:

  • 官方支持

  • 安全性较高


方案3:Device Owner(企业级方案)

这是目前最正规的方案。

设备激活后:

Device Owner
      ↓
MDM
      ↓
策略控制

可实现:

  • 白名单

  • OTA

  • 应用管理

  • 网络管理

  • USB管理

等企业级能力。


应用白名单是什么

很多规格书会写:

Application Whitelist

意思是:

只有白名单中的应用允许运行。

例如:

com.xxx.vending

com.xxx.payment

com.xxx.remote

其它APP:

禁止启动
禁止安装
禁止运行

桌面锁定是什么

很多客户会问:

“支持 Kiosk 吗?”

实际上通常指:

桌面锁定
+
应用白名单

例如:

用户点击Home键
       ↓
仍然回到业务系统

而不是进入系统桌面。


自助设备中的典型架构

以智能柜为例:

Android系统
        ↓
Kiosk Service
        ↓
Launcher
        ↓
业务APP

业务APP异常退出:

WatchDog
      ↓
自动拉起

确保设备长期无人值守运行。


Kiosk ≠ 一个APP

很多客户误认为:

Kiosk 是某个软件

其实不是。

Kiosk 是一种:

设备管理模式(Device Management Mode)

可以通过:

  • Launcher

  • Lock Task

  • Device Owner

  • MDM

等多种方式实现。


项目实践建议

对于售货机、智能柜、POS设备,建议至少具备:

✅ 开机自启动

✅ 应用白名单

✅ 桌面锁定

✅ WatchDog保活

✅ OTA升级

✅ 远程运维

如果这些能力都具备,基本就已经满足绝大多数客户所说的:

“支持 Kiosk 模式”。


总结

Kiosk 模式并不是一个具体软件,而是一套专用终端管理方案。

其核心目标只有一个:

让用户只能使用指定业务功能,无法操作设备本身。

常见能力包括:

  • 开机自启动

  • 应用白名单

  • 桌面锁定

  • 导航栏限制

  • Device Owner 管理

  • 远程运维

对于智能柜、售货机、POS、自助终端等场景,Kiosk 已经成为设备交付的基础能力之一

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐