# @capgo/capacitor-android-kiosk 中文文档

规范地址：https://npmcn.com/package/%40capgo/capacitor-android-kiosk/

版本：8\.3\.3
npm 元数据更新时间：2026-10-15T02:28:41.381Z
中文译文更新时间：2026-11-09T04:02:26.751Z
软件包许可：MPL-2\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40capgo/capacitor-android-kiosk
原文对照：https://npmcn.com/package/%40capgo/capacitor-android-kiosk/?lang=original
项目主页：https://capgo.app/docs/plugins/android-kiosk/
源码仓库：https://github.com/Cap-go/capacitor-android-kiosk

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：119 kB，33 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：0 个
- peer 依赖：@capacitor/core \>=8\.0\.0
- 首次发布：2025-11-06T01:13:46.165Z
- 最新版本发布：2026-10-15T02:28:41.042Z
- 近 30 天下载量：40575（2026-10-09 至 2026-11-07，npm 官方下载统计）
- 已发布版本数：26（近 12 个月 25 个）

## 中文简介

Capacitor 的Android Kiosk模式插件 - 将设备锁入有发射器功能的站点模式

## 安装

```sh
npm install @capgo/capacitor-android-kiosk
```

也可以使用：`pnpm add @capgo/capacitor-android-kiosk`、`yarn add @capgo/capacitor-android-kiosk`、`bun add @capgo/capacitor-android-kiosk`

## README

# 电容器和相机

从您的 Capacitor app 中将一个Android 设备锁定为站点模式:隐藏系统 UI,屏蔽硬件按钮并运行为主启动器. 由发售站,站牌和单功能装置所建.

[![Capgo - Build Capacitor apps with AI, ship updates instantly](https://capgo.app/readme-banner.svg?repo=Cap-go/capacitor-android-kiosk)](https://capgo.app/?ref=plugin_android_kiosk)

**队长**:在几分钟内将修正推给您的 Capacitor 用户,在没有Mac的情况下构建已签名的iOS和Android apps,并在一击中回滚.

## [\*免费开始\*](https://capgo.app/register/?ref=plugin_android_kiosk)

14天无限自由审判. 不需要信用卡

> 🤖 **建筑与AI编码代理?** 安装 [Capgo 技能](https://capgo.app/skills/?ref=plugin_android_kiosk) 所以克劳德代码,代码,光标,副驾驶,或双子座CLI知道如何安装和使用 `@capgo/capacitor-android-kiosk` 在您的电容应用程序中: `npx skills add Cap-go/capgo-skills`。然后问你的经纪人: _加上@capgo/capor-android-kiosk到我的Capacitor应用上并把它接上_ [代理设置指南](https://capgo.app/agents/?ref=plugin_android_kiosk) • 妇女 [主机磁共振](https://capgo.app/docs/ai/mcp/?ref=plugin_android_kiosk)

![@capgo/capacitor-android-kiosk for Capacitor apps](https://raw.githubusercontent.com/Cap-go/capacitor-android-kiosk/main/assets/github-social-preview.png)

## 主要特点

-   **Kiosk 模式**数字 : `enterKioskMode()` 隐藏系统UI并屏蔽硬件按钮, `exitKioskMode()` 恢复他们.
-   **启动器**数字 : `setAsLauncher()` 打开家用屏幕设置 这样你的应用就可以成为发射装置, `isSetAsLauncher()` 检查它.
-   **允许的密钥**数字 : `setAllowedKeys()` 选择哪些硬件键继续以站点模式运行 .
-   **国家检查**数字 : `isInKioskMode()` 报告工作站模式是否活动.
-   **平台**:Android (英语). 仅限Android. iOS和网络不支持.

## 文档

这里有最完整的医生: [https://capgo.app/docs/plugins/android-kiosk/ 页面存档备份,存于互联网档案馆](https://capgo.app/docs/plugins/android-kiosk/)

## 兼容性

| 插件版本 | 电容兼容性 | 维护 |
| --- | --- | --- |
| 联合国 | 联合国 | ✅ |
| 页:1 | 页:1 | 应要求 |
| 页:1 | 页:1 | ❌ |
| 页:1 | 页:1 | ❌ |

> **说明:** 此插件的主要版本沿用了Capacitor的主要版本. 使用匹配您的 Capacitor 安装的版本( 如 Capacitor 8 的插件 v8) 。 只有最新的主要版本得到积极维护.

## 安装

您可以使用我们的 AI 辅助设置安装插件 。 使用以下命令将 Capgo 技能添加到您的 AI 工具 :

```bash
npx skills add https://github.com/cap-go/capacitor-skills --skill capacitor-plugins
```

然后使用下列提示:

```text
Use the `capacitor-plugins` skill from `cap-go/capacitor-skills` to install the `@capgo/capacitor-android-kiosk` plugin in my project.
```

如果您更喜欢手动设置,请通过运行以下命令来安装插件,并遵循下面的平台特定指令:

```bash
npm install @capgo/capacitor-android-kiosk
npx cap sync
```

## 平台支持

此插件为 **仅限机器人**。对于iOS站模式功能,请使用设备内置 [引导访问](https://support.apple.com/en-us/HT202612) 特性.

## 特征

-   **Kiosk 模式**: 隐藏系统 UI并输入浸润全屏模式
-   **保持存活状态**: 在站台时提供前景服务; 调用时停止 `exitKioskMode()`。 。 。 .
-   **会话选项**数字 : `restoreAfterReboot` 尝试在重启后再次打开应用程序; `relaunch` + 键 `relaunchIntervalMinutes` 试图在计时器上让UI前进.
-   **启动器集成**: 将您的应用程序设定为设备发射器/家用应用程序
-   **硬件密钥控制**: 屏蔽或允许特定的硬件按钮
-   **状态检测**: 检查站点模式是否活动, 或者是否将应用设定为启动器
-   **Android 6.0+ (英语)**:支持Android API 23通过Android 15(API 35)

## 使用量

### 基本 Kiosk 模式

```typescript
import { CapacitorAndroidKiosk } from '@capgo/capacitor-android-kiosk';

// Enter kiosk mode (with optional: restoreAfterReboot, relaunch, relaunchIntervalMinutes)
await CapacitorAndroidKiosk.enterKioskMode();

// Exit kiosk mode
await CapacitorAndroidKiosk.exitKioskMode();

// Check if in kiosk mode
const { isInKioskMode } = await CapacitorAndroidKiosk.isInKioskMode();
console.log('Kiosk mode active:', isInKioskMode);
```

### 启动器功能

对于完整的站台模式功能,您需要将您的应用设置为设备发射器:

```typescript
// Open home screen settings for user to select your app as launcher
await CapacitorAndroidKiosk.setAsLauncher();

// Check if app is set as launcher
const { isLauncher } = await CapacitorAndroidKiosk.isSetAsLauncher();
console.log('App is launcher:', isLauncher);
```

### 硬件密钥控制

```typescript
// Allow only volume keys
await CapacitorAndroidKiosk.setAllowedKeys({
  volumeUp: true,
  volumeDown: true,
  back: false,
  home: false,
  recent: false
});

// Block all keys (default)
await CapacitorAndroidKiosk.setAllowedKeys({});
```

### 完整示例

```typescript
async function setupKioskMode() {
  try {
    // Check if already set as launcher
    const { isLauncher } = await CapacitorAndroidKiosk.isSetAsLauncher();

    if (!isLauncher) {
      // Prompt user to set as launcher
      await CapacitorAndroidKiosk.setAsLauncher();
      alert('Please select this app as your Home app');
      return;
    }

    // Configure allowed keys
    await CapacitorAndroidKiosk.setAllowedKeys({
      volumeUp: true,
      volumeDown: true,
      back: false,
      home: false,
      recent: false,
      power: false
    });

    // Enter kiosk mode
    await CapacitorAndroidKiosk.enterKioskMode();
    console.log('Kiosk mode activated');

  } catch (error) {
    console.error('Failed to setup kiosk mode:', error);
  }
}
```

## API 密码

-   [`isInKioskMode()`](https://npmcn.com/package/%40capgo/capacitor-android-kiosk/#readme-isinkioskmode)
-   [`isSetAsLauncher()`](https://npmcn.com/package/%40capgo/capacitor-android-kiosk/#readme-issetaslauncher)
-   [`enterKioskMode(...)`](https://npmcn.com/package/%40capgo/capacitor-android-kiosk/#readme-enterkioskmode)
-   [`exitKioskMode()`](https://npmcn.com/package/%40capgo/capacitor-android-kiosk/#readme-exitkioskmode)
-   [`setAsLauncher()`](https://npmcn.com/package/%40capgo/capacitor-android-kiosk/#readme-setaslauncher)
-   [`setAllowedKeys(...)`](https://npmcn.com/package/%40capgo/capacitor-android-kiosk/#readme-setallowedkeys)
-   [`getPluginVersion()`](https://npmcn.com/package/%40capgo/capacitor-android-kiosk/#readme-getpluginversion)
-   [接口](https://npmcn.com/package/%40capgo/capacitor-android-kiosk/#readme-interfaces)

Android Kiosk插件用于控制站台模式和发射机功能. 此插件仅为Android. 对于iOS站模式,使用设备的"向导访问"功能.

### 时尚模式( I)

```typescript
isInKioskMode() => Promise<{ isInKioskMode: boolean; }>
```

检查应用程序是否以站点模式运行 .

**回返情况:** `Promise<{ isInKioskMode: boolean; }>`

**自:** 1.0.0 (单位:千美元)

* * *

### isSetAsLauncher () (中文(简体) )

```typescript
isSetAsLauncher() => Promise<{ isLauncher: boolean; }>
```

检查该应用程序是否被设定为设备发射器(home app).

**回返情况:** `Promise<{ isLauncher: boolean; }>`

**自:** 1.0.0 (单位:千美元)

* * *

### 输入 KioskMode (...)

```typescript
enterKioskMode(options?: EnterKioskModeOptions | undefined) => Promise<void>
```

输入站台模式,隐藏系统UI并屏蔽硬件按钮. 同时启动一个前景保持-活性服务,因此该应用不太可能被系统所杀. 应用软件必须被设定为设备发射器,以有效发挥作用.

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| **`options`** | `[EnterKioskModeOptions](https://npmcn.com/package/%40capgo/capacitor-android-kiosk/#readme-enterkioskmodeoptions)` | 可选的 奥米 `restoreAfterReboot` 或者说 `relaunch` 以保留其保存的值; 当您想要改变时通过它们. |

**自:** 1.0.0 (单位:千美元)

* * *

### 退出窗口模式 ()

```typescript
exitKioskMode() => Promise<void>
```

出站模式,恢复正常的系统UI和硬件按钮功能. 同时停止在 Enter-KioskMode () 开始的预览保存服务 .

**自:** 1.0.0 (单位:千美元)

* * *

### 设定 ASLauncher ()

```typescript
setAsLauncher() => Promise<void>
```

打开设备的家用屏幕设置,允许用户将这个应用程序设置为发射器. 这是全站模式功能所需的.

**自:** 1.0.0 (单位:千美元)

* * *

### 设置 AllowedKeys (...)

```typescript
setAllowedKeys(options: AllowedKeysOptions) => Promise<void>
```

设定允许哪些硬件密钥在站台模式下运行 . 默认情况下,所有硬件密钥会以站台模式被屏蔽.

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| **`options`** | `[AllowedKeysOptions](https://npmcn.com/package/%40capgo/capacitor-android-kiosk/#readme-allowedkeysoptions)` | 允许的密钥配置 |

**自:** 1.0.0 (单位:千美元)

* * *

### 获取 PluginVersion ()

```typescript
getPluginVersion() => Promise<{ version: string; }>
```

获取本地 Capacitor 插件版本 .

**回返情况:** `Promise<{ version: string; }>`

**自:** 1.0.0 (单位:千美元)

* * *

### 接口

#### 输入工作站模式选项

可选旗帜 `enterKioskMode`。 。 。 .

| Prop | 类型 | 说明 |
| --- | --- | --- |
| **`restoreAfterReboot`** | `boolean` | 重启后,请启动应用程序,以便您打电话 `enterKioskMode()` 再来一次 只做最好的(OEM行为,强制-停止). 关闭保存值 。 呼叫时清除 `exitKioskMode()`。 。 。 . |
| **`relaunch`** | `boolean` | 定期尝试将应用带入前景. 屏幕关闭时跳过 。 经常从某些装置的背景中被阻断——作为默认的发射装置,放宽电池限制,并允许精确的警报(必要时)提高概率。 关闭保存值 . |
| **`relaunchIntervalMinutes`** | `number` | 重新开始尝试之间的分钟 `relaunch` 开始 范围 5-60; 默认 15. |

#### 允许键选项

工作站模式下允许的硬件密钥配置选项 .

| Prop | 类型 | 说明 | 默认 |
| --- | --- | --- | --- |
| **`volumeUp`** | `boolean` | 允许音量向上按钮 | `false` |
| **`volumeDown`** | `boolean` | 允许音量下调按钮 | `false` |
| **`back`** | `boolean` | 允许后键 | `false` |
| **`home`** | `boolean` | 允许家用按钮 | `false` |
| **`recent`** | `boolean` | 允许最近的应用程序按钮 | `false` |
| **`power`** | `boolean` | 允许电源按钮 | `false` |
| **`camera`** | `boolean` | 允许相机按钮( 如果存在) | `false` |
| **`menu`** | `boolean` | 允许菜单按钮( 如果存在) | `false` |

## Android 配置

### 1\. 主要活动设置

要启用全硬件密钥屏蔽, 您需要覆盖 `dispatchKeyEvent` 在你身边 `MainActivity.java`数字 :

```java
import android.view.KeyEvent;
import ee.forgr.plugin.android_kiosk.CapacitorAndroidKioskPlugin;

public class MainActivity extends BridgeActivity {
    @Override
    public boolean dispatchKeyEvent(KeyEvent event) {
        // Get the kiosk plugin
        CapacitorAndroidKioskPlugin kioskPlugin = (CapacitorAndroidKioskPlugin)
            this.getBridge().getPlugin("CapacitorAndroidKiosk").getInstance();

        if (kioskPlugin != null && kioskPlugin.shouldBlockKey(event.getKeyCode())) {
            return true; // Block the key
        }

        return super.dispatchKeyEvent(event);
    }

    @Override
    public void onBackPressed() {
        // Don't call super.onBackPressed() to disable back button
        // Or call the plugin's handleOnBackPressed
    }
}
```

### 2\. AndroidManifest.xml 互联网档案馆的存檔,存档日期2013-12-02

添加启动器意图过滤器使您的应用程序可以选择为启动器 :

```xml
<activity
    android:name=".MainActivity"
    ...>

    <!-- Existing intent filter -->
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>

    <!-- Add this to make app selectable as launcher -->
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.HOME" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
</activity>
```

## 重要说明

1.  **发射装置要求**:对于完整的站台模式功能(屏蔽出家按钮,防止任务切换),您的应用程序必须被设定为设备发射器.
    
2.  **测试**:在测试时,您可以在程序上退出站台模式,或者通过设置另一个应用作为发射器.
    
3.  **Android 版本**:插件为Android 11+使用现代Android API,并回落到更古老的方法来与Android 6.0+相兼容.
    
4.  **警卫**: 此插件是为合法的站台应用程序而设计的. 确保您为用户提供退出站模式的方法 .
    
5.  **电池**: Kiosk 模式保持屏幕打开. 考虑执行您的屏幕超时或亮度管理 .
    

## iOS 选项

对于iOS设备,使用内置设备 [引导访问](https://support.apple.com/en-us/HT202612) 特性 :

1.  转到设置 > 无障碍 > 引导访问
2.  打开有指引的访问
3.  设置密码
4.  打开你的应用
5.  三击侧键
6.  调整设置并开始引导访问

## 捐款

见 [捐款额](https://npmcn.com/package/%40capgo/capacitor-android-kiosk/CONTRIBUTING.md)

## 许可证

麻省理工学院

## 作者

马丁·多纳迪厄 [马丁@ capgo.app](mailto:martin@capgo.app)

## 常见问题

### @capgo/capacitor-android-kiosk 是什么？

Capacitor 的Android Kiosk模式插件 - 将设备锁入有发射器功能的站点模式

### 如何安装 @capgo/capacitor-android-kiosk？

在项目目录运行 npm install @capgo/capacitor-android-kiosk，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：@capacitor/core（\>=8\.0\.0）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @capgo/capacitor-android-kiosk 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @capgo/capacitor-android-kiosk 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @capgo/capacitor-android-kiosk 可以商用吗？

@capgo/capacitor-android-kiosk 使用 MPL-2\.0 许可。弱 Copyleft：可以商用，也可以和闭源代码一起使用；但如果分发时修改了 MPL 授权的文件，这些文件的修改需以 MPL 开源。以上为概括，不构成法律意见，请以许可原文为准。

### @capgo/capacitor-android-kiosk 的下载量有多少？

根据 npm 官方下载统计，@capgo/capacitor-android-kiosk 在 2026/10/09 – 2026/11/07 这 30 天内被下载 40,575 次，日均约 1,353 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @capgo/capacitor-android-kiosk 还在维护吗？

最新版本 8\.3\.3 发布于 2026/10/15（25 天前）；至今共发布 26 个版本，其中过去 12 个月发布了 25 个；首次发布于 2025/11/06。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

