openharmony 鸿蒙 js-apis-app-ability-kioskManager

2025-06-16 浏览 (1)

@ohos.app.ability.kioskManager (Kiosk模式管理)

KioskManager模块提供Kiosk模式管理能力,包括系统进入/退出Kiosk模式操作。

该模块仅适用于企业应用。企业应用可以使用该模式将设备锁定至单一应用,确保界面只服务于特定的交互场景,例如银行ATM设备软件、KTV点歌系统、点餐系统等。

说明:

本模块首批接口从API version 20开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

import { kioskManager } from '@kit.AbilityKit';

enterKioskMode

enterKioskMode(context: UIAbilityContext): Promise<void>

进入Kiosk模式。使用Promise异步回调。

该接口仅适用于EDM配置的支持Kiosk模式的应用。

系统能力: SystemCapability.Ability.AbilityRuntime.Core

参数

参数名类型必填说明
contextUIAbilityContext当前UIAbility的上下文。

返回值:

类型说明
Promise<void>Promise对象。无返回结果的Promise对象。

错误码

以下错误码详细介绍请参考通用错误码元能力子系统错误码

错误码ID错误信息
801Capability not support.
16000050Internal error.
16000110Current application is not in kiosk app list, can not enter kiosk mode.
16000111System is already in kiosk mode, can not enter again.
16000113Current ability is not in foreground.

示例

import { common, kioskManager } from '@kit.AbilityKit';
import { hilog } from '@kit.PerformanceAnalysisKit';
import { BusinessError } from '@kit.BasicServicesKit';

@Entry
@Component
struct Index {
  private uiAbilityContext: common.UIAbilityContext|undefined =
    this.getUIContext().getHostContext() as common.UIAbilityContext;

  build() {
    Column() {
      Button('enterKioskMode').margin({ top: 30 })
        .onClick(() => {
          kioskManager.enterKioskMode(this.uiAbilityContext)
            .then(() => {
              hilog.info(0x0000, 'testTag', '%{public}s', 'enterKioskMode success');
            })
            .catch((error: BusinessError) => {
              hilog.error(0x0000, 'testTag', '%{public}s', `enterKioskMode failed:${JSON.stringify(error)}`);
            });
        })
    }
    .height('100%')
    .width('100%')
  }
}

exitKioskMode

exitKioskMode(context: UIAbilityContext): Promise<void>

退出Kiosk模式。使用Promise异步回调。

该接口仅对已进入Kiosk模式的应用生效。

系统能力: SystemCapability.Ability.AbilityRuntime.Core

参数

参数名类型必填说明
contextUIAbilityContext当前UIAbility的上下文。

返回值:

类型说明
Promise<void>Promise对象。无返回结果的Promise对象。

错误码

以下错误码详细介绍请参考通用错误码元能力子系统错误码

错误码ID错误信息
801Capability not support.
16000050Internal error.
16000110Current application is not in kiosk app list, can not exit kiosk mode.
16000112Current application is not in kiosk mode, can not exit.

示例

import { common, kioskManager } from '@kit.AbilityKit';
import { hilog } from '@kit.PerformanceAnalysisKit';
import { BusinessError } from '@kit.BasicServicesKit';

@Entry
@Component
struct Index {
  private uiAbilityContext: common.UIAbilityContext|undefined =
    this.getUIContext().getHostContext() as common.UIAbilityContext;

  build() {
    Column() {
      Button('exitKioskMode').margin({ top: 10 })
        .onClick(() => {
          kioskManager.exitKioskMode(this.uiAbilityContext)
            .then(() => {
              hilog.info(0x0000, 'testTag', '%{public}s', 'exitKioskMode success');
            })
            .catch((error: BusinessError) => {
              hilog.error(0x0000, 'testTag', '%{public}s', `exitKioskMode failed:${JSON.stringify(error)}`);
            });
        })
    }
    .height('100%')
    .width('100%')
  }
}

你可能感兴趣的鸿蒙文章

harmony 鸿蒙Ability Kit(程序框架服务)

harmony 鸿蒙AbilityBase

harmony 鸿蒙AbilityBase_Element

harmony 鸿蒙AbilityRuntime

harmony 鸿蒙bundle

harmony 鸿蒙OH_NativeBundle_ApplicationInfo

harmony 鸿蒙OH_NativeBundle_ElementName

harmony 鸿蒙ability_base_common.h

harmony 鸿蒙ability_runtime_common.h

harmony 鸿蒙application_context.h

  • 所属分类: 后端技术
  • 本文标签: 软件 鸿蒙
  • 版权声明: 本文链接 https://seaxiang.com/blog/e0Af6Y