@ohos.app.ability.autoStartupManager(autoStartupManager)(系统接口)

autoStartupManager模块提供注册、注销监听应用开机自启动状态变化的回调函数的能力。

说明:

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

本模块接口仅可在Stage模型下使用。

本模块为系统接口。

导入模块

import AutoStartupManager from '@ohos.app.ability.autoStartupManager';

on

on(type: 'systemAutoStartup', callback: AutoStartupCallback): void

注册监听应用组件开机自启动状态变化。

需要权限:ohos.permission.MANAGE_APP_BOOT

系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core

参数

参数名 类型 必填 说明
type string 固定取值“systemAutoStartup”,表示为系统应用所调用。
callback AutoStartupCallback 监听应用组件开机自启动状态变化的回调对象。

错误码

错误码ID 错误信息
16000050 Internal error.

请参考元能力子系统错误码

示例

import AutoStartupManager from '@ohos.app.ability.autoStartupManager';
import common from '@ohos.app.ability.common';

try {
  AutoStartupManager.on('systemAutoStartup', {
    onAutoStartupOn(data: common.AutoStartupInfo) {
      console.info('===> autostartupmanager onAutoStartupOn data: ' + JSON.stringify(data));
    },
    onAutoStartupOff(data: common.AutoStartupInfo) {
      console.info('===> autostartupmanager onAutoStartupOff data: ' + JSON.stringify(data));
    }
  });
} catch (err) {
  console.info('===> autostartupmanager on throw err: ' + JSON.stringify(err));
}

off

off(type: 'systemAutoStartup', callback?: AutoStartupCallback): void

注销监听应用组件开机自启动状态变化。

需要权限:ohos.permission.MANAGE_APP_BOOT

系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core

参数

参数名 类型 必填 说明
type string 固定取值“systemAutoStartup”,表示为系统应用所调用。
callback AutoStartupCallback 监听应用组件开机自启动状态变化的回调对象。

错误码

错误码ID 错误信息
16000050 Internal error.

请参考元能力子系统错误码

示例

import AutoStartupManager from '@ohos.app.ability.autoStartupManager';
import common from '@ohos.app.ability.common';

try {
  AutoStartupManager.off('systemAutoStartup', {
    onAutoStartupOn(data: common.AutoStartupInfo) {
      console.info('===> autostartupmanager onAutoStartupOn data: ' + JSON.stringify(data));
    },
    onAutoStartupOff(data: common.AutoStartupInfo) {
      console.info('===> autostartupmanager onAutoStartupOff data: ' + JSON.stringify(data));
    }
  });
} catch (err) {
  console.info('===> autostartupmanager off throw err: ' + JSON.stringify(err));
}

setApplicationAutoStartup

setApplicationAutoStartup(info: AutoStartupInfo, callback: AsyncCallback<void>): void

设置应用组件开机自启动。使用callback异步回调。

需要权限:ohos.permission.MANAGE_APP_BOOT

系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core

参数

参数名 类型 必填 说明
info AutoStartupInfo 要设置的开机自启动应用组件信息。
callback AsyncCallback<void> 回调函数。当设置应用组件开机自启动成功,err为undefined,否则为错误对象。

错误码

错误码ID 错误信息
16000004 Can not start invisible component.
16000013 The application is controlled by EDM.
16000050 Internal error.

请参考元能力子系统错误码

示例

import AutoStartupManager from '@ohos.app.ability.autoStartupManager';

try {
  AutoStartupManager.setApplicationAutoStartup({
    bundleName: 'com.example.autostartupapp',
    abilityName: 'EntryAbility'
  }, (err, data) => {
    console.info('====> setApplicationAutoStartup: ' + JSON.stringify(err) + ' data: ' + JSON.stringify(data));
  });
} catch (err) {
  console.info('====> setApplicationAutoStartup throw err: ' + JSON.stringify(err));
}

setApplicationAutoStartup

setApplicationAutoStartup(info: AutoStartupInfo): Promise<void>

设置应用组件开机自启动。使用Promise异步回调。

需要权限:ohos.permission.MANAGE_APP_BOOT

系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core

参数

参数名 类型 必填 说明
info AutoStartupInfo 要设置的开机自启动应用组件信息。

返回值:

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

错误码

错误码ID 错误信息
16000004 Can not start invisible component.
16000013 The application is controlled by EDM.
16000050 Internal error.

请参考元能力子系统错误码

示例

import AutoStartupManager from '@ohos.app.ability.autoStartupManager';
import { BusinessError } from '@ohos.base';

try {
  AutoStartupManager.setApplicationAutoStartup({
    bundleName: 'com.example.autostartupapp',
    abilityName: 'EntryAbility'
  }).then((data: void) => {
    console.info('====> setApplicationAutoStartup data: ' + JSON.stringify(data));
  }).catch((err: BusinessError) => {
    console.info('====> setApplicationAutoStartup err: ' + JSON.stringify(err));
  });
} catch (err) {
  console.info('====> setApplicationAutoStartup throw err: ' + JSON.stringify(err));
}

cancelApplicationAutoStartup

cancelApplicationAutoStartup(info: AutoStartupInfo, callback: AsyncCallback<void>): void

取消应用组件开机自启动。使用callback异步回调。

需要权限:ohos.permission.MANAGE_APP_BOOT

系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core

参数

参数名 类型 必填 说明
info AutoStartupInfo 要取消的开机自启动应用组件信息。
callback AsyncCallback<void> 回调函数。当取消应用组件开机自启动成功,err为undefined,否则为错误对象。

错误码

错误码ID 错误信息
16000004 Can not start invisible component.
16000013 The application is controlled by EDM.
16000050 Internal error.

请参考元能力子系统错误码

示例

import AutoStartupManager from '@ohos.app.ability.autoStartupManager';

try {
  AutoStartupManager.cancelApplicationAutoStartup({
    bundleName: 'com.example.autostartupapp',
    abilityName: 'EntryAbility'
  }, (err, data) => {
    console.info('====> cancelApplicationAutoStartup err: ' + JSON.stringify(err) + ' data: ' + JSON.stringify(data));
  });
} catch (err) {
  console.info('====> cancelApplicationAutoStartup throw err: ' + JSON.stringify(err));
}

cancelApplicationAutoStartup

cancelApplicationAutoStartup(info: AutoStartupInfo): Promise<void>

取消应用组件开机自启动。使用Promise异步回调。

需要权限:ohos.permission.MANAGE_APP_BOOT

系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core

参数

参数名 类型 必填 说明
info AutoStartupInfo 要取消的开机自启动应用组件信息。

返回值:

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

错误码

错误码ID 错误信息
16000004 Can not start invisible component.
16000013 The application is controlled by EDM.
16000050 Internal error.

请参考元能力子系统错误码

示例

import AutoStartupManager from '@ohos.app.ability.autoStartupManager';
import { BusinessError } from '@ohos.base';

try {
  AutoStartupManager.cancelApplicationAutoStartup({
    bundleName: 'com.example.autostartupapp',
    abilityName: 'EntryAbility'
  }).then((data: void) => {
    console.info('====> cancelApplicationAutoStartup data: ' + JSON.stringify(data));
  }).catch((err: BusinessError) => {
    console.info('====> cancelApplicationAutoStartup err: ' + JSON.stringify(err));
  });
} catch (err) {
  console.info('====> cancelApplicationAutoStartup throw err: ' + JSON.stringify(err));
}

queryAllAutoStartupApplications

queryAllAutoStartupApplications(callback: AsyncCallback<Array<AutoStartupInfo>>): void

查询自启动应用组件信息。使用callback异步回调。

需要权限:ohos.permission.MANAGE_APP_BOOT

系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core

参数

参数名 类型 必填 说明
callback AsyncCallback<Array<AutoStartupInfo>> 回调函数。当查询自启动应用组件信息成功,err为undefined,data为获取到的Array<AutoStartupInfo>;否则为错误对象。

错误码

错误码ID 错误信息
16000050 Internal error.

请参考元能力子系统错误码

示例

import AutoStartupManager from '@ohos.app.ability.autoStartupManager';

try {
  AutoStartupManager.queryAllAutoStartupApplications((err, data) => {
    console.info('====> queryAllAutoStartupApplications err: ' + JSON.stringify(err) + ' data: ' + JSON.stringify(data));
  });
} catch (err) {
  console.info('====> queryAllAutoStartupApplications throw err: ' + JSON.stringify(err));
}

queryAllAutoStartupApplications

queryAllAutoStartupApplications(): Promise<Array<AutoStartupInfo>>

查询自启动应用组件信息。使用Promise异步回调。

需要权限:ohos.permission.MANAGE_APP_BOOT

系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core

返回值:

类型 说明
Promise<Array<AutoStartupInfo>> Promise对象,返回自启动应用组件信息。

错误码

错误码ID 错误信息
16000050 Internal error.

请参考元能力子系统错误码

示例

import AutoStartupManager from '@ohos.app.ability.autoStartupManager';
import common from '@ohos.app.ability.common';
import { BusinessError } from '@ohos.base';

try {
  AutoStartupManager.queryAllAutoStartupApplications().then((autoStartupInfo: common.AutoStartupInfo[]) => {
    console.info('====> queryAllAutoStartupApplications data: ' + JSON.stringify(autoStartupInfo));
  }).catch((err: BusinessError) => {
    console.info('====> queryAllAutoStartupApplications err: ' + JSON.stringify(err));
  });
} catch (err) {
  console.info('====> queryAllAutoStartupApplications throw err: ' + JSON.stringify(err));
}