• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.app.ability.autoStartupManager (autoStartupManager)
2
3The **autoStartupManager** module provides APIs for listening for auto-startup status changes of application components and setting application components to automatically start upon system boot.
4
5> **NOTE**
6>
7> The initial APIs of this module are supported since API version 11. Newly added APIs will be marked with a superscript to indicate their earliest API version.
8>
9> The APIs of this module are system APIs and cannot be called by third-party applications.
10>
11> The APIs of this module can be used only in the stage model.
12
13## Modules to Import
14
15```ts
16import AutoStartupManager from '@ohos.app.ability.autoStartupManager';
17```
18
19## on
20
21on(type: 'systemAutoStartup', callback: AutoStartupCallback): void
22
23Subscribes to auto-startup status change events of an application component.
24
25**Required permissions**: ohos.permission.MANAGE_APP_BOOT
26
27**System capability**: SystemCapability.Ability.AbilityRuntime.Core
28
29**Parameters**
30
31| Name       | Type                                      | Mandatory  | Description            |
32| --------- | ---------------------------------------- | ---- | -------------- |
33| type | string | Yes   | Event type. The value is fixed at **systemAutoStartup**, which can be called only by system applications.|
34| callback  | [AutoStartupCallback](js-apis-inner-application-autoStartupCallback.md)   | Yes   | Callback used for the subscription.     |
35
36**Error codes**
37
38| ID| Error Message|
39| ------- | -------- |
40| 16000050 | Internal error. |
41
42See [Ability Error Codes](../errorcodes/errorcode-ability.md).
43
44**Example**
45
46```ts
47import AutoStartupManager from '@ohos.app.ability.autoStartupManager';
48import common from '@ohos.app.ability.common';
49
50try {
51  AutoStartupManager.on('systemAutoStartup', {
52    onAutoStartupOn(data: common.AutoStartupInfo) {
53      console.info('===> autostartupmanager onAutoStartupOn data: ' + JSON.stringify(data));
54    },
55    onAutoStartupOff(data: common.AutoStartupInfo) {
56      console.info('===> autostartupmanager onAutoStartupOff data: ' + JSON.stringify(data));
57    }
58  });
59} catch (err) {
60  console.info('===> autostartupmanager on throw err: ' + JSON.stringify(err));
61}
62```
63
64## off
65
66off(type: 'systemAutoStartup', callback?: AutoStartupCallback): void
67
68Unsubscribes from auto-startup status change events of an application component.
69
70**Required permissions**: ohos.permission.MANAGE_APP_BOOT
71
72**System capability**: SystemCapability.Ability.AbilityRuntime.Core
73
74**Parameters**
75
76| Name       | Type                                      | Mandatory  | Description            |
77| --------- | ---------------------------------------- | ---- | -------------- |
78| type | string              | Yes   | Event type. The value is fixed at **systemAutoStartup**, which can be called only by system applications.|
79| callback | [AutoStartupCallback](js-apis-inner-application-autoStartupCallback.md)   | No| Callback that has been registered to listen for auto-startup status changes.|
80
81**Error codes**
82
83| ID| Error Message                                    |
84| -------- | -------------------------------------------- |
85| 16000050 | Internal error.                              |
86
87See [Ability Error Codes](../errorcodes/errorcode-ability.md).
88
89**Example**
90
91```ts
92import AutoStartupManager from '@ohos.app.ability.autoStartupManager';
93import common from '@ohos.app.ability.common';
94
95try {
96  AutoStartupManager.off('systemAutoStartup', {
97    onAutoStartupOn(data: common.AutoStartupInfo) {
98      console.info('===> autostartupmanager onAutoStartupOn data: ' + JSON.stringify(data));
99    },
100    onAutoStartupOff(data: common.AutoStartupInfo) {
101      console.info('===> autostartupmanager onAutoStartupOff data: ' + JSON.stringify(data));
102    }
103  });
104} catch (err) {
105  console.info('===> autostartupmanager off throw err: ' + JSON.stringify(err));
106}
107```
108
109## setApplicationAutoStartup
110
111setApplicationAutoStartup(info: AutoStartupInfo, callback: AsyncCallback\<void\>): void
112
113Sets an application component to automatically start upon system boot. This API uses an asynchronous callback to return the result.
114
115**Required permissions**: ohos.permission.MANAGE_APP_BOOT
116
117**System capability**: SystemCapability.Ability.AbilityRuntime.Core
118
119**Parameters**
120
121| Name       | Type                                      | Mandatory  | Description            |
122| --------- | ---------------------------------------- | ---- | -------------- |
123| info | [AutoStartupInfo](js-apis-inner-application-autoStartupInfo.md) | Yes   | Information about the target application component.|
124| callback | AsyncCallback\<void\> | Yes| Callback used to return the result. If the setting is successful, **err** is **undefined**; otherwise, **err** is an error object.|
125
126**Error codes**
127
128| ID| Error Message                                    |
129| -------- | -------------------------------------------- |
130| 16000004 | Can not start invisible component.           |
131| 16000013 | The application is controlled by EDM.        |
132| 16000050 | Internal error.                              |
133
134See [Ability Error Codes](../errorcodes/errorcode-ability.md).
135
136**Example**
137
138```ts
139import AutoStartupManager from '@ohos.app.ability.autoStartupManager';
140
141try {
142  AutoStartupManager.setApplicationAutoStartup({
143    bundleName: 'com.example.autostartupapp',
144    abilityName: 'EntryAbility'
145  }, (err, data) => {
146    console.info('====> setApplicationAutoStartup: ' + JSON.stringify(err) + ' data: ' + JSON.stringify(data));
147  });
148} catch (err) {
149  console.info('====> setApplicationAutoStartup throw err: ' + JSON.stringify(err));
150}
151```
152
153## setApplicationAutoStartup
154
155setApplicationAutoStartup(info: AutoStartupInfo): Promise\<void\>
156
157Sets an application component to automatically start upon system boot. This API uses a promise to return the result.
158
159**Required permissions**: ohos.permission.MANAGE_APP_BOOT
160
161**System capability**: SystemCapability.Ability.AbilityRuntime.Core
162
163**Parameters**
164
165| Name| Type           | Mandatory| Description                        |
166| ------ | --------------- | ---- | ---------------------------- |
167| info   | [AutoStartupInfo](js-apis-inner-application-autoStartupInfo.md) | Yes  | Information about the target application component.|
168
169**Return value**
170
171| Type         | Description                                                        |
172| ------------- | ------------------------------------------------------------ |
173| Promise\<void\> | Promise that returns no value.|
174
175**Error codes**
176
177| ID| Error Message                                    |
178| -------- | -------------------------------------------- |
179| 16000004 | Can not start invisible component.           |
180| 16000013 | The application is controlled by EDM.        |
181| 16000050 | Internal error.                              |
182
183See [Ability Error Codes](../errorcodes/errorcode-ability.md).
184
185**Example**
186
187```ts
188import AutoStartupManager from '@ohos.app.ability.autoStartupManager';
189import { BusinessError } from '@ohos.base';
190
191try {
192  AutoStartupManager.setApplicationAutoStartup({
193    bundleName: 'com.example.autostartupapp',
194    abilityName: 'EntryAbility'
195  }).then((data: void) => {
196    console.info('====> setApplicationAutoStartup data: ' + JSON.stringify(data));
197  }).catch((err: BusinessError) => {
198    console.info('====> setApplicationAutoStartup err: ' + JSON.stringify(err));
199  });
200} catch (err) {
201  console.info('====> setApplicationAutoStartup throw err: ' + JSON.stringify(err));
202}
203```
204
205## cancelApplicationAutoStartup
206
207cancelApplicationAutoStartup(info: AutoStartupInfo, callback: AsyncCallback\<void\>): void
208
209Cancels the auto-startup setting for an application component. This API uses an asynchronous callback to return the result.
210
211**Required permissions**: ohos.permission.MANAGE_APP_BOOT
212
213**System capability**: SystemCapability.Ability.AbilityRuntime.Core
214
215**Parameters**
216
217| Name       | Type                                      | Mandatory  | Description            |
218| --------- | ---------------------------------------- | ---- | -------------- |
219| info | [AutoStartupInfo](js-apis-inner-application-autoStartupInfo.md)   | Yes| Information about the target application component.|
220| callback | AsyncCallback\<void\> | Yes   | Callback used to return the result. If the cancellation is successful, **err** is **undefined**; otherwise, **err** is an error object.|
221
222**Error codes**
223
224| ID| Error Message                                    |
225| -------- | -------------------------------------------- |
226| 16000004 | Can not start invisible component.           |
227| 16000013 | The application is controlled by EDM.        |
228| 16000050 | Internal error.                              |
229
230See [Ability Error Codes](../errorcodes/errorcode-ability.md).
231
232**Example**
233
234```ts
235import AutoStartupManager from '@ohos.app.ability.autoStartupManager';
236
237try {
238  AutoStartupManager.cancelApplicationAutoStartup({
239    bundleName: 'com.example.autostartupapp',
240    abilityName: 'EntryAbility'
241  }, (err, data) => {
242    console.info('====> cancelApplicationAutoStartup err: ' + JSON.stringify(err) + ' data: ' + JSON.stringify(data));
243  });
244} catch (err) {
245  console.info('====> cancelApplicationAutoStartup throw err: ' + JSON.stringify(err));
246}
247```
248
249## cancelApplicationAutoStartup
250
251cancelApplicationAutoStartup(info: AutoStartupInfo): Promise\<void\>
252
253Cancels the auto-startup setting for an application component. This API uses a promise to return the result.
254
255**Required permissions**: ohos.permission.MANAGE_APP_BOOT
256
257**System capability**: SystemCapability.Ability.AbilityRuntime.Core
258
259**Parameters**
260
261| Name       | Type                                      | Mandatory  | Description            |
262| --------- | ---------------------------------------- | ---- | -------------- |
263| info | [AutoStartupInfo](js-apis-inner-application-autoStartupInfo.md)   | Yes| Information about the target application component.|
264
265**Return value**
266
267| Type         | Description                                                        |
268| ------------- | ------------------------------------------------------------ |
269| Promise\<void\> | Promise that returns no value.|
270
271**Error codes**
272
273| ID| Error Message                                    |
274| -------- | -------------------------------------------- |
275| 16000004 | Can not start invisible component.           |
276| 16000013 | The application is controlled by EDM.        |
277| 16000050 | Internal error.                              |
278
279See [Ability Error Codes](../errorcodes/errorcode-ability.md).
280
281**Example**
282
283```ts
284import AutoStartupManager from '@ohos.app.ability.autoStartupManager';
285import { BusinessError } from '@ohos.base';
286
287try {
288  AutoStartupManager.cancelApplicationAutoStartup({
289    bundleName: 'com.example.autostartupapp',
290    abilityName: 'EntryAbility'
291  }).then((data: void) => {
292    console.info('====> cancelApplicationAutoStartup data: ' + JSON.stringify(data));
293  }).catch((err: BusinessError) => {
294    console.info('====> cancelApplicationAutoStartup err: ' + JSON.stringify(err));
295  });
296} catch (err) {
297  console.info('====> cancelApplicationAutoStartup throw err: ' + JSON.stringify(err));
298}
299```
300
301## queryAllAutoStartupApplications
302
303queryAllAutoStartupApplications(callback: AsyncCallback\<Array\<AutoStartupInfo\>\>): void
304
305Obtains information about all auto-startup application components. This API uses an asynchronous callback to return the result.
306
307**Required permissions**: ohos.permission.MANAGE_APP_BOOT
308
309**System capability**: SystemCapability.Ability.AbilityRuntime.Core
310
311**Parameters**
312
313| Name       | Type                                      | Mandatory  | Description            |
314| --------- | ---------------------------------------- | ---- | -------------- |
315| callback  | AsyncCallback\<Array\<[AutoStartupInfo](js-apis-inner-application-autoStartupInfo.md)\>\> | Yes   | Callback used to return the result. If the information is obtained, **err** is **undefined** and **data** is an array of **<[AutoStartupInfo](js-apis-inner-application-autoStartupInfo.md)\>** objects; otherwise, **err** is an error object.     |
316
317**Error codes**
318
319| ID| Error Message|
320| ------- | -------- |
321| 16000050 | Internal error. |
322
323See [Ability Error Codes](../errorcodes/errorcode-ability.md).
324
325**Example**
326
327```ts
328import AutoStartupManager from '@ohos.app.ability.autoStartupManager';
329
330try {
331  AutoStartupManager.queryAllAutoStartupApplications((err, data) => {
332    console.info('====> queryAllAutoStartupApplications err: ' + JSON.stringify(err) + ' data: ' + JSON.stringify(data));
333  });
334} catch (err) {
335  console.info('====> queryAllAutoStartupApplications throw err: ' + JSON.stringify(err));
336}
337```
338
339## queryAllAutoStartupApplications
340
341 queryAllAutoStartupApplications(): Promise\<Array\<AutoStartupInfo\>\>
342
343Obtains information about all auto-startup application components. This API uses a promise to return the result.
344
345**Required permissions**: ohos.permission.MANAGE_APP_BOOT
346
347**System capability**: SystemCapability.Ability.AbilityRuntime.Core
348
349**Return value**
350
351| Type                           | Description                                                        |
352| ------------------------------- | ------------------------------------------------------------ |
353| Promise\<Array\<[AutoStartupInfo](js-apis-inner-application-autoStartupInfo.md)\>\> | Promise used to return the information obtained.|
354
355**Error codes**
356
357| ID| Error Message|
358| ------- | -------- |
359| 16000050 | Internal error. |
360
361See [Ability Error Codes](../errorcodes/errorcode-ability.md).
362
363**Example**
364
365```ts
366import AutoStartupManager from '@ohos.app.ability.autoStartupManager';
367import common from '@ohos.app.ability.common';
368import { BusinessError } from '@ohos.base';
369
370try {
371  AutoStartupManager.queryAllAutoStartupApplications().then((autoStartupInfo: common.AutoStartupInfo[]) => {
372    console.info('====> queryAllAutoStartupApplications data: ' + JSON.stringify(autoStartupInfo));
373  }).catch((err: BusinessError) => {
374    console.info('====> queryAllAutoStartupApplications err: ' + JSON.stringify(err));
375  });
376} catch (err) {
377  console.info('====> queryAllAutoStartupApplications throw err: ' + JSON.stringify(err));
378}
379```
380