1# @ohos.app.ability.autoStartupManager(autoStartupManager)(系统接口) 2 3autoStartupManager模块提供注册、注销监听应用开机自启动状态变化的回调函数的能力。 4 5> **说明:** 6> 7> 本模块首批接口从API version 11开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 8> 9> 本模块接口仅可在Stage模型下使用。 10> 11> 本模块为系统接口。 12 13## 导入模块 14 15```ts 16import { autoStartupManager } from '@kit.AbilityKit'; 17``` 18 19## on 20 21on(type: 'systemAutoStartup', callback: AutoStartupCallback): void 22 23注册监听应用组件开机自启动状态变化。 24 25**需要权限**:ohos.permission.MANAGE_APP_BOOT 26 27**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 28 29**参数**: 30 31| 参数名 | 类型 | 必填 | 说明 | 32| --------- | ---------------------------------------- | ---- | -------------- | 33| type | string | 是 | 固定取值“systemAutoStartup”,表示为系统应用所调用。 | 34| callback | [AutoStartupCallback](js-apis-inner-application-autoStartupCallback-sys.md) | 是 | 监听应用组件开机自启动状态变化的回调对象。 | 35 36**示例**: 37 38```ts 39import { autoStartupManager, common } from '@kit.AbilityKit'; 40 41try { 42 autoStartupManager.on('systemAutoStartup', { 43 onAutoStartupOn(data: common.AutoStartupInfo) { 44 console.info('===> autostartupmanager onAutoStartupOn data: ' + JSON.stringify(data)); 45 }, 46 onAutoStartupOff(data: common.AutoStartupInfo) { 47 console.info('===> autostartupmanager onAutoStartupOff data: ' + JSON.stringify(data)); 48 } 49 }); 50} catch (err) { 51 console.info('===> autostartupmanager on throw err: ' + JSON.stringify(err)); 52} 53``` 54 55## off 56 57off(type: 'systemAutoStartup', callback?: AutoStartupCallback): void 58 59注销监听应用组件开机自启动状态变化。 60 61**需要权限**:ohos.permission.MANAGE_APP_BOOT 62 63**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 64 65**参数**: 66 67| 参数名 | 类型 | 必填 | 说明 | 68| --------- | ---------------------------------------- | ---- | -------------- | 69| type | string | 是 | 固定取值“systemAutoStartup”,表示为系统应用所调用。 | 70| callback | [AutoStartupCallback](js-apis-inner-application-autoStartupCallback-sys.md) | 否 | 监听应用组件开机自启动状态变化的回调对象。 | 71 72**示例**: 73 74```ts 75import { autoStartupManager, common } from '@kit.AbilityKit'; 76 77try { 78 autoStartupManager.off('systemAutoStartup', { 79 onAutoStartupOn(data: common.AutoStartupInfo) { 80 console.info('===> autostartupmanager onAutoStartupOn data: ' + JSON.stringify(data)); 81 }, 82 onAutoStartupOff(data: common.AutoStartupInfo) { 83 console.info('===> autostartupmanager onAutoStartupOff data: ' + JSON.stringify(data)); 84 } 85 }); 86} catch (err) { 87 console.info('===> autostartupmanager off throw err: ' + JSON.stringify(err)); 88} 89``` 90 91## setApplicationAutoStartup 92 93setApplicationAutoStartup(info: AutoStartupInfo, callback: AsyncCallback\<void\>): void 94 95设置应用组件开机自启动。使用callback异步回调。 96 97**需要权限**:ohos.permission.MANAGE_APP_BOOT 98 99**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 100 101**参数**: 102 103| 参数名 | 类型 | 必填 | 说明 | 104| --------- | ---------------------------------------- | ---- | -------------- | 105| info | [AutoStartupInfo](js-apis-inner-application-autoStartupInfo-sys.md) | 是 | 要设置的开机自启动应用组件信息。 | 106| callback | AsyncCallback\<void\> | 是 | 回调函数。当设置应用组件开机自启动成功,err为undefined,否则为错误对象。 | 107 108**错误码**: 109 110| 错误码ID | 错误信息 | 111| -------- | -------------------------------------------- | 112| 16000004 | Failed to start the invisible ability. | 113| 16000013 | The application is controlled by EDM. | 114| 16000050 | Internal error. | 115 116请参考[元能力子系统错误码](errorcode-ability.md)。 117 118**示例**: 119 120```ts 121import { autoStartupManager } from '@kit.AbilityKit'; 122 123try { 124 autoStartupManager.setApplicationAutoStartup({ 125 bundleName: 'com.example.autostartupapp', 126 abilityName: 'EntryAbility' 127 }, (err, data) => { 128 console.info('====> setApplicationAutoStartup: ' + JSON.stringify(err) + ' data: ' + JSON.stringify(data)); 129 }); 130} catch (err) { 131 console.info('====> setApplicationAutoStartup throw err: ' + JSON.stringify(err)); 132} 133``` 134 135## setApplicationAutoStartup 136 137setApplicationAutoStartup(info: AutoStartupInfo): Promise\<void\> 138 139设置应用组件开机自启动。使用Promise异步回调。 140 141**需要权限**:ohos.permission.MANAGE_APP_BOOT 142 143**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 144 145**参数**: 146 147| 参数名 | 类型 | 必填 | 说明 | 148| ------ | --------------- | ---- | ---------------------------- | 149| info | [AutoStartupInfo](js-apis-inner-application-autoStartupInfo-sys.md) | 是 | 要设置的开机自启动应用组件信息。 | 150 151**返回值:** 152 153| 类型 | 说明 | 154| ------------- | ------------------------------------------------------------ | 155| Promise\<void\> | Promise对象。无返回结果的Promise对象。 | 156 157**错误码**: 158 159| 错误码ID | 错误信息 | 160| -------- | -------------------------------------------- | 161| 16000004 | Failed to start the invisible ability. | 162| 16000013 | The application is controlled by EDM. | 163| 16000050 | Internal error. | 164 165请参考[元能力子系统错误码](errorcode-ability.md)。 166 167**示例**: 168 169```ts 170import { autoStartupManager } from '@kit.AbilityKit'; 171import { BusinessError } from '@kit.BasicServicesKit'; 172 173try { 174 autoStartupManager.setApplicationAutoStartup({ 175 bundleName: 'com.example.autostartupapp', 176 abilityName: 'EntryAbility' 177 }).then((data: void) => { 178 console.info('====> setApplicationAutoStartup data: ' + JSON.stringify(data)); 179 }).catch((err: BusinessError) => { 180 console.info('====> setApplicationAutoStartup err: ' + JSON.stringify(err)); 181 }); 182} catch (err) { 183 console.info('====> setApplicationAutoStartup throw err: ' + JSON.stringify(err)); 184} 185``` 186 187## cancelApplicationAutoStartup 188 189cancelApplicationAutoStartup(info: AutoStartupInfo, callback: AsyncCallback\<void\>): void 190 191取消应用组件开机自启动。使用callback异步回调。 192 193**需要权限**:ohos.permission.MANAGE_APP_BOOT 194 195**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 196 197**参数**: 198 199| 参数名 | 类型 | 必填 | 说明 | 200| --------- | ---------------------------------------- | ---- | -------------- | 201| info | [AutoStartupInfo](js-apis-inner-application-autoStartupInfo-sys.md) | 是 | 要取消的开机自启动应用组件信息。 | 202| callback | AsyncCallback\<void\> | 是 | 回调函数。当取消应用组件开机自启动成功,err为undefined,否则为错误对象。 | 203 204**错误码**: 205 206| 错误码ID | 错误信息 | 207| -------- | -------------------------------------------- | 208| 16000004 | Failed to start the invisible ability. | 209| 16000013 | The application is controlled by EDM. | 210| 16000050 | Internal error. | 211 212请参考[元能力子系统错误码](errorcode-ability.md)。 213 214**示例**: 215 216```ts 217import { autoStartupManager } from '@kit.AbilityKit'; 218 219try { 220 autoStartupManager.cancelApplicationAutoStartup({ 221 bundleName: 'com.example.autostartupapp', 222 abilityName: 'EntryAbility' 223 }, (err, data) => { 224 console.info('====> cancelApplicationAutoStartup err: ' + JSON.stringify(err) + ' data: ' + JSON.stringify(data)); 225 }); 226} catch (err) { 227 console.info('====> cancelApplicationAutoStartup throw err: ' + JSON.stringify(err)); 228} 229``` 230 231## cancelApplicationAutoStartup 232 233cancelApplicationAutoStartup(info: AutoStartupInfo): Promise\<void\> 234 235取消应用组件开机自启动。使用Promise异步回调。 236 237**需要权限**:ohos.permission.MANAGE_APP_BOOT 238 239**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 240 241**参数**: 242 243| 参数名 | 类型 | 必填 | 说明 | 244| --------- | ---------------------------------------- | ---- | -------------- | 245| info | [AutoStartupInfo](js-apis-inner-application-autoStartupInfo-sys.md) | 是 | 要取消的开机自启动应用组件信息。 | 246 247**返回值:** 248 249| 类型 | 说明 | 250| ------------- | ------------------------------------------------------------ | 251| Promise\<void\> | Promise对象。无返回结果的Promise对象。 | 252 253**错误码**: 254 255| 错误码ID | 错误信息 | 256| -------- | -------------------------------------------- | 257| 16000004 | Failed to start the invisible ability. | 258| 16000013 | The application is controlled by EDM. | 259| 16000050 | Internal error. | 260 261请参考[元能力子系统错误码](errorcode-ability.md)。 262 263**示例**: 264 265```ts 266import { autoStartupManager } from '@kit.AbilityKit'; 267import { BusinessError } from '@kit.BasicServicesKit'; 268 269try { 270 autoStartupManager.cancelApplicationAutoStartup({ 271 bundleName: 'com.example.autostartupapp', 272 abilityName: 'EntryAbility' 273 }).then((data: void) => { 274 console.info('====> cancelApplicationAutoStartup data: ' + JSON.stringify(data)); 275 }).catch((err: BusinessError) => { 276 console.info('====> cancelApplicationAutoStartup err: ' + JSON.stringify(err)); 277 }); 278} catch (err) { 279 console.info('====> cancelApplicationAutoStartup throw err: ' + JSON.stringify(err)); 280} 281``` 282 283## queryAllAutoStartupApplications 284 285queryAllAutoStartupApplications(callback: AsyncCallback\<Array\<AutoStartupInfo\>\>): void 286 287查询自启动应用组件信息。使用callback异步回调。 288 289**需要权限**:ohos.permission.MANAGE_APP_BOOT 290 291**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 292 293**参数**: 294 295| 参数名 | 类型 | 必填 | 说明 | 296| --------- | ---------------------------------------- | ---- | -------------- | 297| callback | AsyncCallback\<Array\<[AutoStartupInfo](js-apis-inner-application-autoStartupInfo-sys.md)\>\> | 是 | 回调函数。当查询自启动应用组件信息成功,err为undefined,data为获取到的Array\<[AutoStartupInfo](js-apis-inner-application-autoStartupInfo-sys.md)\>;否则为错误对象。 | 298 299**错误码**: 300 301| 错误码ID | 错误信息 | 302| ------- | -------- | 303| 16000050 | Internal error. | 304 305请参考[元能力子系统错误码](errorcode-ability.md)。 306 307**示例**: 308 309```ts 310import { autoStartupManager } from '@kit.AbilityKit'; 311 312try { 313 autoStartupManager.queryAllAutoStartupApplications((err, data) => { 314 console.info('====> queryAllAutoStartupApplications err: ' + JSON.stringify(err) + ' data: ' + JSON.stringify(data)); 315 }); 316} catch (err) { 317 console.info('====> queryAllAutoStartupApplications throw err: ' + JSON.stringify(err)); 318} 319``` 320 321## queryAllAutoStartupApplications 322 323 queryAllAutoStartupApplications(): Promise\<Array\<AutoStartupInfo\>\> 324 325查询自启动应用组件信息。使用Promise异步回调。 326 327**需要权限**:ohos.permission.MANAGE_APP_BOOT 328 329**系统能力**:SystemCapability.Ability.AbilityRuntime.Core 330 331**返回值:** 332 333| 类型 | 说明 | 334| ------------------------------- | ------------------------------------------------------------ | 335| Promise\<Array\<[AutoStartupInfo](js-apis-inner-application-autoStartupInfo-sys.md)\>\> | Promise对象,返回自启动应用组件信息。 | 336 337**错误码**: 338 339| 错误码ID | 错误信息 | 340| ------- | -------- | 341| 16000050 | Internal error. | 342 343请参考[元能力子系统错误码](errorcode-ability.md)。 344 345**示例**: 346 347```ts 348import { autoStartupManager, common } from '@kit.AbilityKit'; 349import { BusinessError } from '@kit.BasicServicesKit'; 350 351try { 352 autoStartupManager.queryAllAutoStartupApplications().then((autoStartupInfo: common.AutoStartupInfo[]) => { 353 console.info('====> queryAllAutoStartupApplications data: ' + JSON.stringify(autoStartupInfo)); 354 }).catch((err: BusinessError) => { 355 console.info('====> queryAllAutoStartupApplications err: ' + JSON.stringify(err)); 356 }); 357} catch (err) { 358 console.info('====> queryAllAutoStartupApplications throw err: ' + JSON.stringify(err)); 359} 360``` 361