• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.bundle (Bundle模块)
2<!--Kit: Ability Kit-->
3<!--Subsystem: BundleManager-->
4<!--Owner: @wanghang904-->
5<!--Designer: @hanfeng6-->
6<!--Tester: @kongjing2-->
7<!--Adviser: @Brilliantry_Rui-->
8
9本模块提供应用信息查询能力,支持[包信息](js-apis-bundle-BundleInfo.md)、[应用信息](js-apis-bundle-ApplicationInfo.md)、[Ability组件信息](js-apis-bundle-AbilityInfo.md)等信息的查询,以及应用禁用状态的查询、设置等。
10
11> **说明:**
12>
13> 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
14>
15> 从API Version 9开始,该模块不再维护,建议使用[@ohos.bundle.bundleManager](js-apis-bundleManager.md)替代。
16
17## 导入模块
18
19```ts
20import bundle from '@ohos.bundle';
21```
22
23## 权限列表
24
25| 权限                                         | 权限等级         | 描述            |
26|--------------------------------------------|--------------|---------------|
27| ohos.permission.GET_BUNDLE_INFO | normal | 查询指定应用信息。 |
28| ohos.permission.GET_BUNDLE_INFO_PRIVILEGED | system_basic | 可查询所有应用信息。     |
29
30权限等级参考[权限APL等级说明](../../security/AccessToken/app-permission-mgmt-overview.md#权限机制中的基本概念)。
31
32## bundle.getApplicationInfo<sup>deprecated<sup>
33
34> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.getApplicationInfo](js-apis-bundleManager-sys.md#bundlemanagergetapplicationinfo-2)替代。<!--DelEnd-->
35
36getApplicationInfo(bundleName: string, bundleFlags: number, userId?: number): Promise\<ApplicationInfo>
37
38根据给定的Bundle名称获取ApplicationInfo。使用Promise异步回调。
39
40获取调用方自己的信息时不需要权限。
41
42**需要权限:**
43
44ohos.permission.GET_BUNDLE_INFO_PRIVILEGEDohos.permission.GET_BUNDLE_INFO
45
46**系统能力:**
47
48SystemCapability.BundleManager.BundleFramework
49
50**参数:**
51
52| 参数名      | 类型   | 必填 | 说明                                                         |
53| ----------- | ------ | ---- | ------------------------------------------------------------ |
54| bundleName  | string | 是   | 要查询的应用Bundle名称。                                     |
55| bundleFlags | number | 是   | 用于指定返回的应用信息对象中包含信息的标记。取值范围请参考[BundleFlag说明](#bundleflagdeprecated)中应用信息相关flag。 |
56| userId      | number | 否   | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。        |
57
58**返回值:**
59
60| 类型                        | 说明                 |
61| ------------------------- | ------------------ |
62| Promise\<[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)> | Promise形式返回应用程序信息。 |
63
64**示例:**
65
66```ts
67import bundle from '@ohos.bundle';
68import { BusinessError } from '@ohos.base';
69
70let bundleName: string = "com.example.myapplication";
71let bundleFlags: number = 0;
72let userId: number = 100;
73
74bundle.getApplicationInfo(bundleName, bundleFlags, userId)
75  .then((data) => {
76    console.info('Operation successful. Data: ' + JSON.stringify(data));
77  }).catch((error: BusinessError) => {
78    console.error('Operation failed. Cause: ' + JSON.stringify(error));
79  })
80```
81
82## bundle.getApplicationInfo<sup>deprecated<sup>
83
84> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.getApplicationInfo](js-apis-bundleManager-sys.md#bundlemanagergetapplicationinfo)替代。<!--DelEnd-->
85
86getApplicationInfo(bundleName: string, bundleFlags: number, userId: number, callback: AsyncCallback\<ApplicationInfo>): void
87
88根据给定的Bundle名称获取指定用户下的ApplicationInfo,使用callback异步回调。
89
90获取调用方自己的信息时不需要权限。
91
92**需要权限:**
93
94ohos.permission.GET_BUNDLE_INFO_PRIVILEGEDohos.permission.GET_BUNDLE_INFO
95
96**系统能力:**
97
98SystemCapability.BundleManager.BundleFramework
99
100**参数:**
101
102| 参数名      | 类型                                                         | 必填 | 说明                                                         |
103| ----------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
104| bundleName  | string                                                       | 是   | 要查询的应用Bundle名称。                                     |
105| bundleFlags | number                                                       | 是   | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中应用信息相关flag。 |
106| userId      | number                                                       | 是   | 用户ID。取值范围:大于等于0。                                |
107| callback    | AsyncCallback\<[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)> | 是   | 程序启动作为入参的回调函数,返回应用程序信息。               |
108
109**示例:**
110
111```ts
112import bundle from '@ohos.bundle';
113
114let bundleName: string = "com.example.myapplication";
115let bundleFlags: number = 0;
116let userId: number = 100;
117
118bundle.getApplicationInfo(bundleName, bundleFlags, userId, (err, data) => {
119  if (err) {
120    console.error('Operation failed. Cause: ' + JSON.stringify(err));
121    return;
122  }
123  console.info('Operation successful. Data:' + JSON.stringify(data));
124})
125```
126
127## bundle.getApplicationInfo<sup>deprecated<sup>
128
129> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.getApplicationInfo](js-apis-bundleManager-sys.md#bundlemanagergetapplicationinfo-1)替代。<!--DelEnd-->
130
131
132getApplicationInfo(bundleName: string, bundleFlags: number, callback: AsyncCallback\<ApplicationInfo>): void
133
134根据给定的Bundle名称获取ApplicationInfo,使用callback异步回调。
135
136获取调用方自己的信息时不需要权限。
137
138**需要权限:**
139
140ohos.permission.GET_BUNDLE_INFO_PRIVILEGEDohos.permission.GET_BUNDLE_INFO
141
142**系统能力:**
143
144SystemCapability.BundleManager.BundleFramework
145
146**参数:**
147
148| 参数名      | 类型                                                         | 必填 | 说明                                                         |
149| ----------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
150| bundleName  | string                                                       | 是   | 要查询的应用Bundle名称。                                     |
151| bundleFlags | number                                                       | 是   | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中应用信息相关flag。 |
152| callback    | AsyncCallback\<[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)> | 是   | 程序启动作为入参的回调函数,返回应用程序信息。               |
153
154**示例:**
155
156```ts
157import bundle from '@ohos.bundle';
158
159let bundleName: string = "com.example.myapplication";
160let bundleFlags: number = 0;
161
162bundle.getApplicationInfo(bundleName, bundleFlags, (err, data) => {
163  if (err) {
164    console.error('Operation failed. Cause: ' + JSON.stringify(err));
165    return;
166  }
167  console.info('Operation successful. Data:' + JSON.stringify(data));
168})
169```
170
171
172## bundle.getAllBundleInfo<sup>deprecated<sup>
173
174> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.getAllBundleInfo](js-apis-bundleManager-sys.md#bundlemanagergetallbundleinfo-2)替代。<!--DelEnd-->
175
176getAllBundleInfo(bundleFlag: BundleFlag, userId?: number): Promise\<Array\<BundleInfo\>\>
177
178获取指定用户所有的BundleInfo,使用Promise形式异步回调。
179
180**需要权限:**
181
182ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
183
184**系统能力:**
185
186SystemCapability.BundleManager.BundleFramework
187
188**参数:**
189
190| 参数名     | 类型       | 必填 | 说明                                                         |
191| ---------- | ---------- | ---- | ------------------------------------------------------------ |
192| bundleFlag | BundleFlag | 是   | 用于指定返回的包信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中包信息相关flag。 |
193| userId     | number     | 否   | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。        |
194
195**返回值:**
196
197| 类型                          | 说明                         |
198| --------------------------- | -------------------------- |
199| Promise<Array\<[BundleInfo](js-apis-bundle-BundleInfo.md)>> | Promise形式返回所有可用的BundleInfo |
200
201**示例:**
202
203```ts
204import bundle from '@ohos.bundle';
205import { BusinessError } from '@ohos.base';
206
207let bundleFlag: number = 0;
208let userId: number = 100;
209
210bundle.getAllBundleInfo(bundleFlag, userId)
211  .then((data) => {
212    console.info('Operation successful. Data: ' + JSON.stringify(data));
213  }).catch((error: BusinessError) => {
214    console.error('Operation failed. Cause: ' + JSON.stringify(error));
215  })
216```
217
218## bundle.getAllBundleInfo<sup>deprecated<sup>
219
220> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.getAllBundleInfo](js-apis-bundleManager-sys.md#bundlemanagergetallbundleinfo-1)替代。<!--DelEnd-->
221
222
223getAllBundleInfo(bundleFlag: BundleFlag, callback: AsyncCallback\<Array\<BundleInfo\>\>): void
224
225获取当前用户所有的BundleInfo,使用callback异步回调。
226
227**需要权限:**
228
229ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
230
231**系统能力:**
232
233SystemCapability.BundleManager.BundleFramework
234
235**参数:**
236
237| 参数名     | 类型                                                         | 必填 | 说明                                                         |
238| ---------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
239| bundleFlag | BundleFlag                                                   | 是   | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中包信息相关flag。 |
240| callback   | AsyncCallback<Array\<[BundleInfo](js-apis-bundle-BundleInfo.md)>> | 是   | 程序启动作为入参的回调函数,返回所有可用的BundleInfo。       |
241
242**示例:**
243
244```ts
245import bundle from '@ohos.bundle';
246
247let bundleFlag: number = 0;
248
249bundle.getAllBundleInfo(bundleFlag, (err, data) => {
250  if (err) {
251    console.error('Operation failed. Cause: ' + JSON.stringify(err));
252    return;
253  }
254  console.info('Operation successful. Data:' + JSON.stringify(data));
255})
256```
257
258## bundle.getAllBundleInfo<sup>deprecated<sup>
259
260> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.getAllBundleInfo](js-apis-bundleManager-sys.md#bundlemanagergetallbundleinfo)替代。<!--DelEnd-->
261
262
263getAllBundleInfo(bundleFlag: BundleFlag, userId: number, callback: AsyncCallback\<Array\<BundleInfo\>\>): void
264
265获取系统中指定用户下所有的BundleInfo,使用callback异步回调。
266
267**需要权限:**
268
269ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
270
271**系统能力:**
272
273SystemCapability.BundleManager.BundleFramework
274
275**参数:**
276
277| 参数名        | 类型                                                                | 必填  | 说明                                                                  |
278|------------|-------------------------------------------------------------------|-----|---------------------------------------------------------------------|
279| bundleFlag | BundleFlag                                                        | 是   | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中包信息相关flag。 |
280| userId     | number                                                            | 是   | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。                           |
281| callback   | AsyncCallback<Array\<[BundleInfo](js-apis-bundle-BundleInfo.md)>> | 是   | 程序启动作为入参的回调函数,返回指定用户下所有包的BundleInfo。                  |
282
283**示例:**
284
285```ts
286import bundle from '@ohos.bundle';
287
288let bundleFlag: number = 0;
289let userId: number = 100;
290
291bundle.getAllBundleInfo(bundleFlag, userId, (err, data) => {
292  if (err) {
293    console.error('Operation failed. Cause: ' + JSON.stringify(err));
294    return;
295  }
296  console.info('Operation successful. Data:' + JSON.stringify(data));
297})
298```
299
300## bundle.getBundleInfo<sup>deprecated<sup>
301
302> 从API version 9开始不再维护,建议使用[bundleManager.getBundleInfo](js-apis-bundleManager.md#bundlemanagergetbundleinfo14-2)替代。
303
304
305getBundleInfo(bundleName: string, bundleFlags: number, options?: BundleOptions): Promise\<BundleInfo>
306
307根据给定的Bundle名称获取BundleInfo,使用Promise异步回调。
308
309获取调用方自己的信息时不需要权限。
310
311**需要权限:**
312
313ohos.permission.GET_BUNDLE_INFO_PRIVILEGEDohos.permission.GET_BUNDLE_INFO
314
315**系统能力:**
316
317SystemCapability.BundleManager.BundleFramework
318
319**参数:**
320
321| 参数名         | 类型            | 必填   | 说明                                                                  |
322| ----------- | ------------- | ---- |---------------------------------------------------------------------|
323| bundleName  | string        | 是    | 要查询的应用Bundle名称。                                                 |
324| bundleFlags | number        | 是    | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中包信息相关flag。 |
325| options     | [BundleOptions](#bundleoptionsdeprecated) | 否    | 包含userid的查询选项。                                                      |
326
327**返回值:**
328
329| 类型                   | 说明                           |
330| -------------------- | ---------------------------- |
331| Promise\<[BundleInfo](js-apis-bundle-BundleInfo.md)> | Promise对象,获取成功时返回包信息。 |
332
333**示例:**
334
335```ts
336import bundle from '@ohos.bundle';
337import { BusinessError } from '@ohos.base';
338
339let bundleName: string = "com.example.myapplication";
340let bundleFlags: number = 1;
341let options: bundle.BundleOptions = {
342  "userId": 100
343};
344
345bundle.getBundleInfo(bundleName, bundleFlags, options)
346  .then((data) => {
347    console.info('Operation successful. Data: ' + JSON.stringify(data));
348  }).catch((error: BusinessError) => {
349    console.error('Operation failed. Cause: ' + JSON.stringify(error));
350  })
351```
352
353## bundle.getBundleInfo<sup>deprecated<sup>
354
355> 从API version 9开始不再维护,建议使用[bundleManager.getBundleInfo](js-apis-bundleManager.md#bundlemanagergetbundleinfo14-1)替代。
356
357getBundleInfo(bundleName: string, bundleFlags: number, callback: AsyncCallback\<BundleInfo>): void
358
359根据给定的Bundle名称获取BundleInfo,使用callback异步回调。
360
361获取调用方自己的信息时不需要权限。
362
363**需要权限:**
364
365ohos.permission.GET_BUNDLE_INFO_PRIVILEGEDohos.permission.GET_BUNDLE_INFO
366
367**系统能力:**
368
369SystemCapability.BundleManager.BundleFramework
370
371**参数:**
372
373| 参数名      | 类型                                                       | 必填 | 说明                                                         |
374| ----------- | ---------------------------------------------------------- | ---- | ------------------------------------------------------------ |
375| bundleName  | string                                                     | 是   | 需要查询的应用Bundle名称。                                   |
376| bundleFlags | number                                                     | 是   | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中包信息相关flag。 |
377| callback    | AsyncCallback\<[BundleInfo](js-apis-bundle-BundleInfo.md)> | 是   | 程序启动作为入参的回调函数,返回包信息。                     |
378
379**示例:**
380
381```ts
382import bundle from '@ohos.bundle';
383
384let bundleName: string = "com.example.myapplication";
385let bundleFlags: number = 1;
386
387bundle.getBundleInfo(bundleName, bundleFlags, (err, data) => {
388  if (err) {
389    console.error('Operation failed. Cause: ' + JSON.stringify(err));
390    return;
391  }
392  console.info('Operation successful. Data:' + JSON.stringify(data));
393})
394```
395
396## bundle.getBundleInfo<sup>deprecated<sup>
397
398> 从API version 9开始不再维护,建议使用[bundleManager.getBundleInfo](js-apis-bundleManager.md#bundlemanagergetbundleinfo14)替代。
399
400getBundleInfo(bundleName: string, bundleFlags: number, options: BundleOptions, callback: AsyncCallback\<BundleInfo>): void
401
402根据给定的Bundle名称获取BundleInfo,使用callback异步回调。
403
404获取调用方自己的信息时不需要权限。
405
406**需要权限:**
407
408ohos.permission.GET_BUNDLE_INFO_PRIVILEGEDohos.permission.GET_BUNDLE_INFO
409
410**系统能力:**
411
412SystemCapability.BundleManager.BundleFramework
413
414**参数:**
415
416| 参数名      | 类型                                                       | 必填 | 说明                                                         |
417| ----------- | ---------------------------------------------------------- | ---- | ------------------------------------------------------------ |
418| bundleName  | string                                                     | 是   | 要查询的应用Bundle名称。                                     |
419| bundleFlags | number                                                     | 是   | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中包信息相关flag。 |
420| options     | [BundleOptions](#bundleoptionsdeprecated)                            | 是   | 包含userid。                                                 |
421| callback    | AsyncCallback\<[BundleInfo](js-apis-bundle-BundleInfo.md)> | 是   | 程序启动作为入参的回调函数,返回包信息。                     |
422
423**示例:**
424
425```ts
426import bundle from '@ohos.bundle';
427
428let bundleName: string = "com.example.myapplication";
429let bundleFlags: number = 1;
430let options: bundle.BundleOptions = {
431  "userId": 100
432};
433
434bundle.getBundleInfo(bundleName, bundleFlags, options, (err, data) => {
435  if (err) {
436    console.error('Operation failed. Cause: ' + JSON.stringify(err));
437    return;
438  }
439  console.info('Operation successful. Data:' + JSON.stringify(data));
440})
441```
442
443## bundle.getAllApplicationInfo<sup>deprecated<sup>
444
445> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.getAllApplicationInfo](js-apis-bundleManager-sys.md#bundlemanagergetallapplicationinfo-2)替代。<!--DelEnd-->
446
447getAllApplicationInfo(bundleFlags: number, userId?: number): Promise\<Array\<ApplicationInfo\>\>
448
449获取指定用户下所有已安装的应用信息,使用promise异步回调。
450
451**需要权限:**
452
453ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
454
455**系统能力:**
456
457SystemCapability.BundleManager.BundleFramework
458
459**参数:**
460
461| 参数名      | 类型   | 必填 | 说明                                                         |
462| ----------- | ------ | ---- | ------------------------------------------------------------ |
463| bundleFlags | number | 是   | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中应用信息相关flag。 |
464| userId      | number | 否   | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。        |
465
466**返回值:**
467
468| 类型                               | 说明                              |
469| -------------------------------- | ------------------------------- |
470| Promise<Array\<[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)>> | Promise对象,获取成功时返回应用信息列表。 |
471
472**示例:**
473
474```ts
475import bundle from '@ohos.bundle';
476import { BusinessError } from '@ohos.base';
477
478let bundleFlags: number = 8;
479let userId: number = 100;
480
481bundle.getAllApplicationInfo(bundleFlags, userId)
482  .then((data) => {
483    console.info('Operation successful. Data: ' + JSON.stringify(data));
484  }).catch((error: BusinessError) => {
485    console.error('Operation failed. Cause: ' + JSON.stringify(error));
486  })
487```
488
489## bundle.getAllApplicationInfo<sup>deprecated<sup>
490
491> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.getAllApplicationInfo](js-apis-bundleManager-sys.md#bundlemanagergetallapplicationinfo)替代。<!--DelEnd-->
492
493getAllApplicationInfo(bundleFlags: number, userId: number, callback: AsyncCallback\<Array\<ApplicationInfo\>\>): void
494
495获取指定用户下所有已安装的应用信息,使用callback异步回调。
496
497**需要权限:**
498
499ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
500
501**系统能力:**
502
503SystemCapability.BundleManager.BundleFramework
504
505**参数:**
506
507| 参数名      | 类型                                                         | 必填 | 说明                                                         |
508| ----------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
509| bundleFlags | number                                                       | 是   | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中应用信息相关flag。 |
510| userId      | number                                                       | 是   | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。        |
511| callback    | AsyncCallback<Array\<[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)>> | 是   | 程序启动作为入参的回调函数,返回应用信息列表。               |
512
513**示例:**
514
515```ts
516import bundle from '@ohos.bundle';
517
518let bundleFlags: number = bundle.BundleFlag.GET_APPLICATION_INFO_WITH_PERMISSION;
519let userId: number = 100;
520
521bundle.getAllApplicationInfo(bundleFlags, userId, (err, data) => {
522  if (err) {
523    console.error('Operation failed. Cause: ' + JSON.stringify(err));
524    return;
525  }
526  console.info('Operation successful. Data:' + JSON.stringify(data));
527})
528```
529
530
531## bundle.getAllApplicationInfo<sup>deprecated<sup>
532
533> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.getAllApplicationInfo](js-apis-bundleManager-sys.md#bundlemanagergetallapplicationinfo-1)替代。<!--DelEnd-->
534
535getAllApplicationInfo(bundleFlags: number, callback: AsyncCallback\<Array\<ApplicationInfo\>\>): void
536
537获取调用方所在用户下已安装的应用信息,使用callback异步回调。
538
539**需要权限:**
540
541ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
542
543**系统能力:**
544
545SystemCapability.BundleManager.BundleFramework
546
547**参数:**
548
549| 参数名      | 类型                                                         | 必填 | 说明                                                         |
550| ----------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
551| bundleFlags | number                                                       | 是   | 用于指定返回的应用信息对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中应用信息相关flag。 |
552| callback    | AsyncCallback<Array\<[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)>> | 是   | 程序启动作为入参的回调函数,返回应用信息列表。               |
553
554**示例:**
555
556```ts
557import bundle from '@ohos.bundle';
558
559let bundleFlags: number = bundle.BundleFlag.GET_APPLICATION_INFO_WITH_PERMISSION;
560
561bundle.getAllApplicationInfo(bundleFlags, (err, data) => {
562  if (err) {
563    console.error('Operation failed. Cause: ' + JSON.stringify(err));
564    return;
565  }
566  console.info('Operation successful. Data:' + JSON.stringify(data));
567})
568```
569
570## bundle.getBundleArchiveInfo<sup>deprecated<sup>
571
572> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.getBundleArchiveInfo](js-apis-bundleManager-sys.md#bundlemanagergetbundlearchiveinfo-1)替代。<!--DelEnd-->
573
574getBundleArchiveInfo(hapFilePath: string, bundleFlags: number) : Promise\<BundleInfo>
575
576获取有关HAP中包含的应用程序包的信息,使用Promise异步回调。
577
578**系统能力:**
579
580SystemCapability.BundleManager.BundleFramework
581
582**参数:**
583
584| 参数名        | 类型     | 必填   | 说明           |
585| ---------- | ------ | ---- | ------------ |
586| hapFilePath | string | 是    | HAP存放路径。支持当前应用程序的绝对路径和数据目录沙箱路径。 |
587| bundleFlags | number | 是    | 用于指定要返回的BundleInfo对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中包信息相关flag。 |
588
589**返回值:**
590| 类型                                                 | 说明                                                         |
591| ---------------------------------------------------- | ------------------------------------------------------------ |
592| Promise\<[BundleInfo](js-apis-bundle-BundleInfo.md)> | 返回值为Promise对象,Promise中包含有关HAP中包含的应用程序的信息。 |
593
594**示例:**
595
596```ts
597import bundle from '@ohos.bundle';
598import { BusinessError } from '@ohos.base';
599
600let hapFilePath: string = "/data/storage/el2/base/test.hap";
601let bundleFlags: number = 0;
602
603bundle.getBundleArchiveInfo(hapFilePath, bundleFlags)
604  .then((data) => {
605    console.info('Operation successful. Data: ' + JSON.stringify(data));
606  }).catch((error: BusinessError) => {
607    console.error('Operation failed. Cause: ' + JSON.stringify(error));
608  })
609```
610
611## bundle.getBundleArchiveInfo<sup>deprecated<sup>
612
613> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.getBundleArchiveInfo](js-apis-bundleManager-sys.md#bundlemanagergetbundlearchiveinfo)替代。<!--DelEnd-->
614
615getBundleArchiveInfo(hapFilePath: string, bundleFlags: number, callback: AsyncCallback\<BundleInfo>) : void
616
617获取有关HAP中包含的应用程序包的信息,使用callback异步回调。
618
619**系统能力:**
620
621SystemCapability.BundleManager.BundleFramework
622
623**参数:**
624
625| 参数名        | 类型     | 必填   | 说明           |
626| ---------- | ------ | ---- | ------------ |
627| hapFilePath | string | 是    | HAP存放路径,支持当前应用程序的绝对路径和数据目录沙箱路径。 |
628| bundleFlags | number | 是    | 用于指定要返回的BundleInfo对象中包含信息的标记。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中包信息相关flag。 |
629| callback| AsyncCallback\<[BundleInfo](js-apis-bundle-BundleInfo.md)> | 是    | 程序启动作为入参的回调函数,返回HAP中包含的应用程序包的信息。 |
630
631**示例:**
632
633```ts
634import bundle from '@ohos.bundle';
635
636let hapFilePath: string = "/data/storage/el2/base/test.hap";
637let bundleFlags: number = 0;
638
639bundle.getBundleArchiveInfo(hapFilePath, bundleFlags, (err, data) => {
640  if (err) {
641    console.error('Operation failed. Cause: ' + JSON.stringify(err));
642    return;
643  }
644  console.info('Operation successful. Data:' + JSON.stringify(data));
645})
646```
647
648## bundle.getAbilityInfo<sup>deprecated<sup>
649
650> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.queryAbilityInfo](js-apis-bundleManager-sys.md#bundlemanagerqueryabilityinfo-2)替代。<!--DelEnd-->
651
652getAbilityInfo(bundleName: string, abilityName: string): Promise\<AbilityInfo>
653
654通过Bundle名称和组件名获取Ability组件信息,使用Promise形式异步回调。
655
656获取调用方自己的信息时不需要权限。
657
658**需要权限:**
659
660ohos.permission.GET_BUNDLE_INFO_PRIVILEGEDohos.permission.GET_BUNDLE_INFO
661
662**系统能力:**
663
664SystemCapability.BundleManager.BundleFramework
665
666**参数:**
667
668| 参数名         | 类型     | 必填   | 说明         |
669| ----------- | ------ | ---- |------------|
670| bundleName  | string | 是    | 应用Bundle名称。 |
671| abilityName | string | 是    | Ability组件名称。 |
672
673**返回值:**
674
675| 类型                    | 说明                    |
676| --------------------- | --------------------- |
677| Promise\<[AbilityInfo](js-apis-bundle-AbilityInfo.md)> | Promise形式返回Ability信息。 |
678
679**示例:**
680
681```ts
682import bundle from '@ohos.bundle';
683import { BusinessError } from '@ohos.base';
684
685let bundleName: string = "com.example.myapplication";
686let abilityName: string = "EntryAbility";
687
688bundle.getAbilityInfo(bundleName, abilityName)
689  .then((data) => {
690    console.info('Operation successful. Data: ' + JSON.stringify(data));
691  }).catch((error: BusinessError) => {
692    console.error('Operation failed. Cause: ' + JSON.stringify(error));
693  })
694```
695
696## bundle.getAbilityInfo<sup>deprecated<sup>
697
698> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.queryAbilityInfo](js-apis-bundleManager-sys.md#bundlemanagerqueryabilityinfo)替代。<!--DelEnd-->
699
700getAbilityInfo(bundleName: string, abilityName: string, callback: AsyncCallback\<AbilityInfo>): void
701
702通过Bundle名称和组件名获取Ability组件信息,使用callback异步回调。
703
704获取调用方自己的信息时不需要权限。
705
706**需要权限:**
707
708ohos.permission.GET_BUNDLE_INFO_PRIVILEGEDohos.permission.GET_BUNDLE_INFO
709
710**系统能力:**
711
712SystemCapability.BundleManager.BundleFramework
713
714**参数:**
715
716| 参数名        | 类型     | 必填   | 说明                         |
717| ----------- | ------------ | ---- |----------------------------|
718| bundleName  | string | 是    | 应用Bundle名称。                |
719| abilityName | string | 是    | Ability名称。                 |
720| callback    | AsyncCallback\<[AbilityInfo](js-apis-bundle-AbilityInfo.md)> | 是    | 程序启动作为入参的回调函数,返回Ability信息。 |
721
722**示例:**
723
724```ts
725import bundle from '@ohos.bundle';
726
727let bundleName: string = "com.example.myapplication";
728let abilityName: string = "EntryAbility";
729
730bundle.getAbilityInfo(bundleName, abilityName, (err, data) => {
731  if (err) {
732    console.error('Operation failed. Cause: ' + JSON.stringify(err));
733    return;
734  }
735  console.info('Operation successful. Data:' + JSON.stringify(data));
736})
737```
738
739## bundle.getAbilityLabel<sup>8+</sup> <sup>deprecated<sup>
740
741> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.getAbilityLabel](js-apis-bundleManager-sys.md#bundlemanagergetabilitylabel-1)替代。<!--DelEnd-->
742
743getAbilityLabel(bundleName: string, abilityName: string): Promise\<string>
744
745通过Bundle名称和ability名称获取应用名称,使用Promise异步回调。
746
747获取调用方自己的信息时不需要权限。
748
749**需要权限:**
750
751ohos.permission.GET_BUNDLE_INFO_PRIVILEGEDohos.permission.GET_BUNDLE_INFO
752
753**系统能力:**
754
755SystemCapability.BundleManager.BundleFramework
756
757**参数:**
758
759| 参数名      | 类型   | 必填 | 说明             |
760| ----------- | ------ | ---- | ---------------- |
761| bundleName  | string | 是   | 应用Bundle名称。 |
762| abilityName | string | 是   | Ability名称。    |
763
764**返回值:**
765
766| 类型               | 说明                 |
767| ---------------- | ------------------ |
768| Promise\<string> | Promise形式返回应用名称信息。 |
769
770**示例:**
771
772```ts
773import bundle from '@ohos.bundle';
774import { BusinessError } from '@ohos.base';
775
776let bundleName: string = "com.example.myapplication";
777let abilityName: string = "EntryAbility";
778
779bundle.getAbilityLabel(bundleName, abilityName)
780  .then((data) => {
781    console.info('Operation successful. Data: ' + JSON.stringify(data));
782  }).catch((error: BusinessError) => {
783    console.error('Operation failed. Cause: ' + JSON.stringify(error));
784  })
785```
786
787## bundle.getAbilityLabel<sup>8+</sup> <sup>deprecated<sup>
788
789> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.getAbilityLabel](js-apis-bundleManager-sys.md#bundlemanagergetabilitylabel)替代。<!--DelEnd-->
790
791getAbilityLabel(bundleName: string, abilityName: string, callback : AsyncCallback\<string>): void
792
793通过Bundle名称和Ability组件名获取应用名称,使用callback异步回调。
794
795获取调用方自己的信息时不需要权限。
796
797**需要权限:**
798
799ohos.permission.GET_BUNDLE_INFO_PRIVILEGEDohos.permission.GET_BUNDLE_INFO
800
801**系统能力:**
802
803SystemCapability.BundleManager.BundleFramework
804
805**参数:**
806
807| 参数名      | 类型                   | 必填 | 说明                                           |
808| ----------- | ---------------------- | ---- | ---------------------------------------------- |
809| bundleName  | string                 | 是   | 应用Bundle名称。                               |
810| abilityName | string                 | 是   | Ability名称。                                  |
811| callback    | AsyncCallback\<string> | 是   | 程序启动作为入参的回调函数,返回应用名称信息。 |
812
813**示例:**
814
815```ts
816import bundle from '@ohos.bundle';
817
818let bundleName: string = "com.example.myapplication";
819let abilityName: string = "EntryAbility";
820
821bundle.getAbilityLabel(bundleName, abilityName, (err, data) => {
822  if (err) {
823    console.error('Operation failed. Cause: ' + JSON.stringify(err));
824    return;
825  }
826  console.info('Operation successful. Data:' + JSON.stringify(data));
827})
828```
829
830## bundle.isAbilityEnabled<sup>8+</sup> <sup>deprecated<sup>
831
832> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.isAbilityEnabled](js-apis-bundleManager-sys.md#bundlemanagerisabilityenabled-1)替代。<!--DelEnd-->
833
834isAbilityEnabled(info: AbilityInfo): Promise\<boolean>
835
836根据给定的AbilityInfo查询ability是否已经启用,使用Promise异步回调。
837
838**系统能力:**
839
840SystemCapability.BundleManager.BundleFramework
841
842**参数:**
843
844| 参数名 | 类型                                         | 必填 | 说明              |
845| ------ | -------------------------------------------- | ---- | ----------------- |
846| info   | [AbilityInfo](js-apis-bundle-AbilityInfo.md) | 是   | Ability的配置信息。 |
847
848**返回值:**
849
850| 类型                | 说明                        |
851| ----------------- | ------------------------- |
852| Promise\<boolean> | Promise形式返回boolean代表是否启用。 |
853
854**示例:**
855
856```ts
857import bundle from '@ohos.bundle';
858import { BusinessError } from '@ohos.base';
859
860let bundleName: string = "com.example.myapplication";
861let abilityName: string = "EntryAbility";
862
863bundle.getAbilityInfo(bundleName, abilityName).then((abilityInfo) => {
864  bundle.isAbilityEnabled(abilityInfo).then((data) => {
865    console.info('Operation successful. Data: ' + JSON.stringify(data));
866  }).catch((error: BusinessError) => {
867    console.error('Operation failed. Cause: ' + JSON.stringify(error));
868  })
869})
870```
871
872## bundle.isAbilityEnabled<sup>8+</sup> <sup>deprecated<sup>
873
874> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.isAbilityEnabled](js-apis-bundleManager-sys.md#bundlemanagerisabilityenabled)替代。<!--DelEnd-->
875
876isAbilityEnabled(info : AbilityInfo, callback : AsyncCallback\<boolean>): void
877
878根据给定的AbilityInfo查询ability是否已经启用,使用callback异步回调。
879
880**系统能力:**
881
882SystemCapability.BundleManager.BundleFramework
883
884**参数:**
885
886| 参数名   | 类型                                         | 必填 | 说明                    |
887| -------- | -------------------------------------------- | ---- | ----------------------- |
888| info     | [AbilityInfo](js-apis-bundle-AbilityInfo.md) | 是   | Ability的配置信息。       |
889| callback | AsyncCallback\<boolean>                      | 是   | 回调函数,返回boolean代表是否启用。 |
890
891**示例:**
892
893```ts
894import bundle from '@ohos.bundle';
895
896let bundleName: string = "com.example.myapplication";
897let abilityName: string = "EntryAbility";
898
899bundle.getAbilityInfo(bundleName, abilityName).then((abilityInfo) => {
900  bundle.isAbilityEnabled(abilityInfo, (err, data) => {
901    if (err) {
902      console.error('Operation failed. Cause: ' + JSON.stringify(err));
903      return;
904    }
905    console.info('Operation successful. Data:' + JSON.stringify(data));
906  })
907})
908```
909
910## bundle.isApplicationEnabled<sup>8+</sup> <sup>deprecated<sup>
911
912> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.isApplicationEnabled](js-apis-bundleManager-sys.md#bundlemanagerisapplicationenabled-1)替代。<!--DelEnd-->
913
914isApplicationEnabled(bundleName: string): Promise\<boolean>
915
916根据给定的bundleName查询指定应用程序是否已经启用,使用Promise异步回调。
917
918**系统能力:**
919
920SystemCapability.BundleManager.BundleFramework
921
922**参数:**
923
924| 参数名     | 类型   | 必填 | 说明                     |
925| ---------- | ------ | ---- | ------------------------ |
926| bundleName | string | 是   | 要查询的应用Bundle名称。 |
927
928**返回值:**
929
930| 类型                | 说明                        |
931| ----------------- | ------------------------- |
932| Promise\<boolean> | Promise形式返回boolean代表是否启用。 |
933
934**示例:**
935
936```ts
937import bundle from '@ohos.bundle';
938import { BusinessError } from '@ohos.base';
939
940let bundleName: string = "com.example.myapplication";
941
942bundle.isApplicationEnabled(bundleName)
943  .then((data) => {
944    console.info('Operation successful. Data: ' + JSON.stringify(data));
945  }).catch((error: BusinessError) => {
946    console.error('Operation failed. Cause: ' + JSON.stringify(error));
947  })
948```
949
950## bundle.isApplicationEnabled<sup>8+</sup> <sup>deprecated<sup>
951
952> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.isApplicationEnabled](js-apis-bundleManager-sys.md#bundlemanagerisapplicationenabled)替代。<!--DelEnd-->
953
954isApplicationEnabled(bundleName: string, callback : AsyncCallback\<boolean>): void
955
956根据给定的bundleName查询指定应用程序是否已经启用,使用callback异步回调。
957
958**系统能力:**
959
960SystemCapability.BundleManager.BundleFramework
961
962**参数:**
963
964| 参数名     | 类型                    | 必填 | 说明                     |
965| ---------- | ----------------------- | ---- | ------------------------ |
966| bundleName | string                  | 是   | 要查询的应用Bundle名称。 |
967| callback   | AsyncCallback\<boolean> | 是   | 回调函数,返回boolean代表是否启用。 |
968
969**示例:**
970
971```ts
972import bundle from '@ohos.bundle';
973
974let bundleName: string = "com.example.myapplication";
975
976bundle.isApplicationEnabled(bundleName, (err, data) => {
977  if (err) {
978    console.error('Operation failed. Cause: ' + JSON.stringify(err));
979    return;
980  }
981  console.info('Operation successful. Data:' + JSON.stringify(data));
982})
983```
984
985## bundle.queryAbilityByWant<sup>deprecated<sup>
986
987> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.queryAbilityInfo](js-apis-bundleManager-sys.md#bundlemanagerqueryabilityinfo12)替代。<!--DelEnd-->
988
989queryAbilityByWant(want: Want, bundleFlags: number, userId?: number): Promise\<Array\<AbilityInfo\>\>
990
991根据给定的意图获取Ability组件信息,使用Promise异步回调。
992
993获取调用方自己的信息时不需要权限。
994
995**需要权限:**
996
997ohos.permission.GET_BUNDLE_INFO_PRIVILEGEDohos.permission.GET_BUNDLE_INFO
998
999**系统能力:**
1000
1001SystemCapability.BundleManager.BundleFramework
1002
1003**参数:**
1004
1005| 参数名         | 类型     | 必填   | 说明                                    |
1006| ----------- | ------ | ---- | ------------------------------------- |
1007| want        | [Want](js-apis-application-want.md)   | 是    | 包含要查询的应用Bundle名称的意图。                  |
1008| bundleFlags | number | 是    | 用于指定返回abilityInfo信息。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中Ability信息相关flag。 |
1009| userId      | number | 否    | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。           |
1010
1011**返回值:**
1012
1013| 类型                           | 说明                    |
1014| ---------------------------- | --------------------- |
1015| Promise<Array\<[AbilityInfo](js-apis-bundle-AbilityInfo.md)>> | Promise形式返回Ability信息。 |
1016
1017**示例:**
1018
1019```ts
1020import bundle from '@ohos.bundle';
1021import { BusinessError } from '@ohos.base';
1022import Want from '@ohos.app.ability.Want';
1023
1024let bundleFlags: number = 0;
1025let userId: number = 100;
1026let want: Want = {
1027  bundleName: "com.example.myapplication",
1028  abilityName: "EntryAbility"
1029};
1030
1031bundle.queryAbilityByWant(want, bundleFlags, userId)
1032  .then((data) => {
1033    console.info('Operation successful. Data: ' + JSON.stringify(data));
1034  }).catch((error: BusinessError) => {
1035    console.error('Operation failed. Cause: ' + JSON.stringify(error));
1036  })
1037```
1038
1039
1040
1041## bundle.queryAbilityByWant<sup>deprecated<sup>
1042
1043> 从API version 9开始不再维护。
1044
1045queryAbilityByWant(want: Want, bundleFlags: number, userId: number, callback: AsyncCallback\<Array\<AbilityInfo\>\>): void
1046
1047根据给定的意图获取指定用户下Ability信息,使用callback异步回调。
1048
1049获取调用方自己的信息时不需要权限。
1050
1051**需要权限:**
1052
1053ohos.permission.GET_BUNDLE_INFO_PRIVILEGEDohos.permission.GET_BUNDLE_INFO
1054
1055**系统能力:**
1056
1057SystemCapability.BundleManager.BundleFramework
1058
1059**参数:**
1060
1061| 参数名      | 类型                                                         | 必填 | 说明                                                         |
1062| ----------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
1063| want        | [Want](js-apis-application-want.md)                          | 是   | 指示包含要查询的应用Bundle名称的意图。                       |
1064| bundleFlags | number                                                       | 是   | 用于指定返回abilityInfo信息。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中Ability信息相关flag。 |
1065| userId      | number                                                       | 是   | 用户ID。取值范围:大于等于0。                                |
1066| callback    | AsyncCallback<Array\<[AbilityInfo](js-apis-bundle-AbilityInfo.md)>> | 是   | 程序启动作为入参的回调函数,返回Ability信息。                |
1067
1068**示例:**
1069
1070```ts
1071import bundle from '@ohos.bundle';
1072import Want from '@ohos.app.ability.Want';
1073
1074let bundleFlags: number = 0;
1075let userId: number = 100;
1076let want: Want = {
1077  bundleName: "com.example.myapplication",
1078  abilityName: "EntryAbility"
1079};
1080
1081bundle.queryAbilityByWant(want, bundleFlags, userId, (err, data) => {
1082  if (err) {
1083    console.error('Operation failed. Cause: ' + JSON.stringify(err));
1084    return;
1085  }
1086  console.info('Operation successful. Data:' + JSON.stringify(data));
1087})
1088```
1089
1090## bundle.queryAbilityByWant<sup>deprecated<sup>
1091
1092> 从API version 9开始不再维护。
1093
1094queryAbilityByWant(want: Want, bundleFlags: number, callback: AsyncCallback\<Array\<AbilityInfo\>\>): void
1095
1096根据给定的意图获取Ability信息,使用callback异步回调。
1097
1098获取调用方自己的信息时不需要权限。
1099
1100**需要权限:**
1101
1102ohos.permission.GET_BUNDLE_INFO_PRIVILEGEDohos.permission.GET_BUNDLE_INFO
1103
1104**系统能力:**
1105
1106SystemCapability.BundleManager.BundleFramework
1107
1108**参数:**
1109
1110| 参数名      | 类型                                                         | 必填 | 说明                                                         |
1111| ----------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
1112| want        | [Want](js-apis-application-want.md)                          | 是   | 指示包含要查询的应用Bundle名称的意图。                       |
1113| bundleFlags | number                                                       | 是   | 用于指定返回abilityInfo信息。取值范围:参考[BundleFlag说明](#bundleflagdeprecated)中Ability信息相关flag。 |
1114| callback    | AsyncCallback<Array\<[AbilityInfo](js-apis-bundle-AbilityInfo.md)>> | 是   | 程序启动作为入参的回调函数,返回Ability信息。                |
1115
1116**示例:**
1117
1118```ts
1119import bundle from '@ohos.bundle';
1120import Want from '@ohos.app.ability.Want';
1121
1122let bundleFlags: number = 0;
1123let want: Want = {
1124  bundleName: "com.example.myapplication",
1125  abilityName: "EntryAbility"
1126};
1127
1128bundle.queryAbilityByWant(want, bundleFlags, (err, data) => {
1129  if (err) {
1130    console.error('Operation failed. Cause: ' + JSON.stringify(err));
1131    return;
1132  }
1133  console.info('Operation successful. Data:' + JSON.stringify(data));
1134})
1135```
1136
1137
1138
1139## bundle.getLaunchWantForBundle<sup>deprecated<sup>
1140
1141> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.getLaunchWantForBundle](js-apis-bundleManager-sys.md#bundlemanagergetlaunchwantforbundle-2)替代。<!--DelEnd-->
1142
1143getLaunchWantForBundle(bundleName: string): Promise\<Want>
1144
1145查询拉起指定应用的want对象,使用Promise异步回调。
1146
1147**需要权限:**
1148
1149ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
1150
1151**系统能力:**
1152
1153SystemCapability.BundleManager.BundleFramework
1154
1155**参数:**
1156
1157| 参数名     | 类型   | 必填 | 说明                     |
1158| ---------- | ------ | ---- | ------------------------ |
1159| bundleName | string | 是   | 要查询的应用Bundle名称。 |
1160
1161**返回值:**
1162| 类型             | 说明                                     |
1163| -------------- | -------------------------------------- |
1164| Promise\<[Want](js-apis-application-want.md)> | 返回值为Promise对象,Promise中包含拉起指定应用的Want对象。 |
1165
1166**示例:**
1167
1168```ts
1169import bundle from '@ohos.bundle';
1170import { BusinessError } from '@ohos.base';
1171
1172let bundleName: string = "com.example.myapplication";
1173
1174bundle.getLaunchWantForBundle(bundleName)
1175  .then((data) => {
1176    console.info('Operation successful. Data: ' + JSON.stringify(data));
1177  }).catch((error: BusinessError) => {
1178    console.error('Operation failed. Cause: ' + JSON.stringify(error));
1179  })
1180```
1181
1182## bundle.getLaunchWantForBundle<sup>deprecated<sup>
1183
1184> 从API version 9开始不再维护,替代接口仅向系统应用开放。<!--Del-->建议使用[bundleManager.getLaunchWantForBundle](js-apis-bundleManager-sys.md#bundlemanagergetlaunchwantforbundle-1)替代。<!--DelEnd-->
1185
1186getLaunchWantForBundle(bundleName: string, callback: AsyncCallback\<Want>): void
1187
1188查询拉起指定应用的want对象,使用callback异步回调。
1189
1190**需要权限:**
1191
1192ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
1193
1194**系统能力:**
1195
1196SystemCapability.BundleManager.BundleFramework
1197
1198**参数:**
1199
1200| 参数名     | 类型                                                | 必填 | 说明                                                     |
1201| ---------- | --------------------------------------------------- | ---- | -------------------------------------------------------- |
1202| bundleName | string                                              | 是   | 要查询的应用Bundle名称。                                 |
1203| callback   | AsyncCallback\<[Want](js-apis-application-want.md)> | 是   | 程序启动作为入参的回调函数,返回拉起指定应用的want对象。 |
1204
1205**示例:**
1206
1207```ts
1208import bundle from '@ohos.bundle';
1209
1210let bundleName: string = "com.example.myapplication";
1211
1212bundle.getLaunchWantForBundle(bundleName, (err, data) => {
1213  if (err) {
1214    console.error('Operation failed. Cause: ' + JSON.stringify(err));
1215    return;
1216  }
1217  console.info('Operation successful. Data:' + JSON.stringify(data));
1218})
1219```
1220
1221
1222## bundle.getNameForUid<sup>8+</sup> <sup>deprecated<sup>
1223
1224> 从API version 9开始不再维护,建议使用[bundleManager.getBundleNameByUid](js-apis-bundleManager.md#bundlemanagergetbundlenamebyuid14-1)替代。
1225
1226getNameForUid(uid: number): Promise\<string>
1227
1228通过uid获取对应的Bundle名称,使用Promise异步回调。
1229
1230**系统能力:**
1231
1232SystemCapability.BundleManager.BundleFramework
1233
1234**参数:**
1235
1236| 参数名 | 类型   | 必填 | 说明          |
1237| ------ | ------ | ---- | ------------- |
1238| uid    | number | 是   | 要查询的uid。 |
1239
1240**返回值:**
1241| 类型               | 说明                                |
1242| ---------------- | --------------------------------- |
1243| Promise\<string> | 返回值为Promise对象,Promise中包含指定uid的Bundle名称。 |
1244
1245**示例:**
1246
1247```ts
1248import bundle from '@ohos.bundle';
1249import { BusinessError } from '@ohos.base';
1250
1251let uid: number = 20010005;
1252
1253bundle.getNameForUid(uid)
1254  .then((data) => {
1255    console.info('Operation successful. Data: ' + JSON.stringify(data));
1256  }).catch((error: BusinessError) => {
1257    console.error('Operation failed. Cause: ' + JSON.stringify(error));
1258  })
1259```
1260
1261## bundle.getNameForUid<sup>8+</sup> <sup>deprecated<sup>
1262
1263> 从API version 9开始不再维护,建议使用[bundleManager.getBundleNameByUid](js-apis-bundleManager.md#bundlemanagergetbundlenamebyuid14)替代。
1264
1265getNameForUid(uid: number, callback: AsyncCallback\<string>) : void
1266
1267通过uid获取对应的Bundle名称,使用callback异步回调。
1268
1269**系统能力:**
1270
1271SystemCapability.BundleManager.BundleFramework
1272
1273**参数:**
1274
1275| 参数名   | 类型                   | 必填 | 说明                                                  |
1276| -------- | ---------------------- | ---- | ----------------------------------------------------- |
1277| uid      | number                 | 是   | 要查询的uid。                                         |
1278| callback | AsyncCallback\<string> | 是   | 程序启动作为入参的回调函数,返回指定uid的Bundle名称。 |
1279
1280**示例:**
1281
1282```ts
1283import bundle from '@ohos.bundle';
1284
1285let uid: number = 20010005;
1286
1287bundle.getNameForUid(uid, (err, data) => {
1288  if (err) {
1289    console.error('Operation failed. Cause: ' + JSON.stringify(err));
1290    return;
1291  }
1292  console.info('Operation successful. Data:' + JSON.stringify(data));
1293})
1294```
1295
1296
1297## bundle.getAbilityIcon<sup>8+</sup> <sup>deprecated<sup>
1298
1299> 从API version 9开始不再维护,建议使用[resourceManager.getMediaContent](../apis-localization-kit/js-apis-resource-manager.md#getmediacontent9)替代。
1300
1301getAbilityIcon(bundleName: string, abilityName: string): Promise\<image.PixelMap>
1302
1303通过bundleName和abilityName获取对应Icon的[PixelMap](../apis-image-kit/arkts-apis-image-PixelMap.md),使用Promise异步回调。
1304
1305获取调用方自己的信息时不需要权限。
1306
1307**需要权限:**
1308
1309ohos.permission.GET_BUNDLE_INFO_PRIVILEGEDohos.permission.GET_BUNDLE_INFO
1310
1311**系统能力:**
1312
1313SystemCapability.BundleManager.BundleFramework
1314
1315**参数:**
1316
1317| 参数名      | 类型   | 必填 | 说明                     |
1318| ----------- | ------ | ---- | ------------------------ |
1319| bundleName  | string | 是   | 要查询的应用Bundle名称。 |
1320| abilityName | string | 是   | 要查询的Ability组件名。  |
1321
1322**返回值:**
1323| 类型                  | 说明                                                         |
1324| --------------------- | ------------------------------------------------------------ |
1325| Promise\<image.PixelMap> | 返回值为[PixelMap](../apis-image-kit/arkts-apis-image-PixelMap.md)。 |
1326
1327**示例:**
1328
1329```ts
1330import bundle from '@ohos.bundle';
1331import { BusinessError } from '@ohos.base';
1332
1333let bundleName: string = "com.example.myapplication";
1334let abilityName: string = "EntryAbility";
1335
1336bundle.getAbilityIcon(bundleName, abilityName)
1337  .then((data) => {
1338    console.info('Operation successful. Data: ' + JSON.stringify(data));
1339  }).catch((error: BusinessError) => {
1340    console.error('Operation failed. Cause: ' + JSON.stringify(error));
1341  })
1342```
1343
1344## bundle.getAbilityIcon<sup>8+</sup> <sup>deprecated<sup>
1345
1346> 从API version 9开始不再维护,建议使用[resourceManager.getMediaContent](../apis-localization-kit/js-apis-resource-manager.md#getmediacontent9)替代。
1347
1348getAbilityIcon(bundleName: string, abilityName: string, callback: AsyncCallback\<image.PixelMap>): void
1349
1350通过bundleName和abilityName获取对应Icon的[PixelMap](../apis-image-kit/arkts-apis-image-PixelMap.md),使用callback异步回调。
1351
1352获取调用方自己的信息时不需要权限。
1353
1354**需要权限:**
1355
1356ohos.permission.GET_BUNDLE_INFO_PRIVILEGEDohos.permission.GET_BUNDLE_INFO
1357
1358
1359**系统能力:**
1360
1361SystemCapability.BundleManager.BundleFramework
1362
1363**参数:**
1364
1365| 参数名         | 类型                                       | 必填   | 说明                                              |
1366| ----------- | ---------------------------------------- | ---- |-------------------------------------------------|
1367| bundleName  | string                                   | 是    | 要查询的应用Bundle名称。                                |
1368| abilityName | string                                   | 是    | 要查询的Ability组件名。                                 |
1369| callback   | AsyncCallback\<image.PixelMap> | 是   | 程序启动作为入参的回调函数,返回指定[PixelMap](../apis-image-kit/arkts-apis-image-PixelMap.md)。 |
1370
1371**示例:**
1372
1373```ts
1374import bundle from '@ohos.bundle';
1375
1376let bundleName: string = "com.example.myapplication";
1377let abilityName: string = "EntryAbility";
1378
1379bundle.getAbilityIcon(bundleName, abilityName, (err, data) => {
1380  if (err) {
1381    console.error('Operation failed. Cause: ' + JSON.stringify(err));
1382    return;
1383  }
1384  console.info('Operation successful. Data:' + JSON.stringify(data));
1385})
1386```
1387
1388## InstallErrorCode<sup>deprecated<sup>
1389> 从API version 9开始不再维护,建议使用[errorcode-bundle](errorcode-bundle.md)替代。
1390
1391 **系统能力:** SystemCapability.BundleManager.BundleFramework
1392
1393| 名称                                                 | 值   | 说明                                             |
1394| ---------------------------------------------------- | ---- | ------------------------------------------------ |
1395| SUCCESS                                              | 0    | 安装成功。                                         |
1396| STATUS_INSTALL_FAILURE                               | 1    | 安装失败(不存在安装的应用)。                     |
1397| STATUS_INSTALL_FAILURE_ABORTED                       | 2    | 安装中止。                                         |
1398| STATUS_INSTALL_FAILURE_INVALID                       | 3    | 安装参数无效。                                     |
1399| STATUS_INSTALL_FAILURE_CONFLICT                      | 4    | 安装冲突 (常见于升级和已有应用基本信息不一致)。  |
1400| STATUS_INSTALL_FAILURE_STORAGE                       | 5    | 存储包信息失败。                                   |
1401| STATUS_INSTALL_FAILURE_INCOMPATIBLE                  | 6    | 安装不兼容(常见于版本降级安装或者签名信息错误)。 |
1402| STATUS_UNINSTALL_FAILURE                             | 7    | 卸载失败 (不存在卸载的应用)。                    |
1403| STATUS_UNINSTALL_FAILURE_BLOCKED                     | 8    | 卸载中止 (没有使用)。                            |
1404| STATUS_UNINSTALL_FAILURE_ABORTED                     | 9    | 卸载中止 (参数无效导致)。                       |
1405| STATUS_UNINSTALL_FAILURE_CONFLICT                    | 10   | 卸载冲突 (卸载系统应用失败, 结束应用进程失败)。 |
1406| STATUS_INSTALL_FAILURE_DOWNLOAD_TIMEOUT              | 0x0B | 安装失败 (下载超时)。                            |
1407| STATUS_INSTALL_FAILURE_DOWNLOAD_FAILED               | 0x0C | 安装失败 (下载失败)。                            |
1408| STATUS_RECOVER_FAILURE_INVALID<sup>8+</sup>          | 0x0D | 恢复预置应用失败。                                 |
1409| STATUS_ABILITY_NOT_FOUND                             | 0x40 | Ability未找到。                                    |
1410| STATUS_BMS_SERVICE_ERROR                             | 0x41 | BMS服务错误。                                      |
1411| STATUS_FAILED_NO_SPACE_LEFT<sup>8+</sup>             | 0x42 | 设备空间不足。                                     |
1412| STATUS_GRANT_REQUEST_PERMISSIONS_FAILED<sup>8+</sup> | 0x43 | 应用授权失败。                                     |
1413| STATUS_INSTALL_PERMISSION_DENIED<sup>8+</sup>        | 0x44 | 缺少安装权限。                                     |
1414| STATUS_UNINSTALL_PERMISSION_DENIED<sup>8+</sup>      | 0x45 | 缺少卸载权限。                                     |
1415
1416## BundleFlag<sup>deprecated<sup>
1417
1418> 从API version 9开始不再维护,建议使用[bundleManager.BundleFlag](js-apis-bundleManager.md#bundleflag)替代。
1419
1420包信息标志,指示需要获取的包信息的内容。
1421
1422当接口与标志不匹配时,该标志会被忽略,例如获取application时使用GET_ABILITY_INFO_WITH_PERMISSION对结果不会产生影响。
1423
1424标志可以叠加使用,例如使用GET_APPLICATION_INFO_WITH_PERMISSION + GET_APPLICATION_INFO_WITH_DISABLE可以使结果同时包含应用权限信息和被禁用的应用信息。
1425
1426 **系统能力:** SystemCapability.BundleManager.BundleFramework
1427
1428| 名称                                            | 值         | 说明                            |
1429| ----------------------------------------------- | ---------- | ------------------------------- |
1430| GET_BUNDLE_DEFAULT                              | 0x00000000 | 获取默认的应用信息。              |
1431| GET_BUNDLE_WITH_ABILITIES                       | 0x00000001 | 获取包括Ability信息的包信息。     |
1432| GET_ABILITY_INFO_WITH_PERMISSION                | 0x00000002 | 获取包括权限的Ability信息。       |
1433| GET_ABILITY_INFO_WITH_APPLICATION               | 0x00000004 | 获取包括Application的ability信息。       |
1434| GET_APPLICATION_INFO_WITH_PERMISSION            | 0x00000008 | 获取包括权限的应用信息。          |
1435| GET_BUNDLE_WITH_REQUESTED_PERMISSION            | 0x00000010 | 获取包括所需权限的包信息。        |
1436| GET_ABILITY_INFO_WITH_METADATA<sup>8+</sup>     | 0x00000020 | 获取ability的元数据信息。         |
1437| GET_APPLICATION_INFO_WITH_METADATA<sup>8+</sup> | 0x00000040 | 获取应用的元数据信息。            |
1438| GET_ABILITY_INFO_SYSTEMAPP_ONLY<sup>8+</sup>    | 0x00000080 | 获取仅包括系统应用的ability信息。 |
1439| GET_ABILITY_INFO_WITH_DISABLE<sup>8+</sup>      | 0x00000100 | 获取包括被禁用的ability信息。     |
1440| GET_APPLICATION_INFO_WITH_DISABLE<sup>8+</sup>  | 0x00000200 | 获取包括被禁用的应用信息。        |
1441| GET_ALL_APPLICATION_INFO                        | 0xFFFF0000 | 获取应用所有的信息。              |
1442
1443## BundleOptions<sup>deprecated<sup>
1444> 从API version 9开始不再维护,不推荐使用。
1445
1446查询选项,包含userId。
1447
1448 **系统能力:** SystemCapability.BundleManager.BundleFramework
1449
1450| 名称   | 类型   | 只读 | 可选 | 说明                                                  |
1451| ------ | ------ | ---- | ---- | ----------------------------------------------------- |
1452| userId | number | 否   | 是   | 用户ID。默认值:调用方所在用户,取值范围:大于等于0。 |
1453
1454## AbilityType<sup>deprecated<sup>
1455
1456> 从API version 9开始不再维护,建议使用[bundleManager.AbilityType](js-apis-bundleManager.md#abilitytype)替代。
1457
1458Ability组件类型。
1459
1460 **系统能力:** SystemCapability.BundleManager.BundleFramework
1461
1462| 名称 | 值 | 说明                        |
1463| ------- | ---- | --------------------------- |
1464| UNKNOWN | 无   | 未知Ability类型。             |
1465| PAGE    | 无   | 表示基于Page模板开发的FA,用于提供与用户交互的能力。        |
1466| SERVICE | 无   | 表示基于Service模板开发的PA,用于提供后台运行任务的能力。           |
1467| DATA    | 无   | 表示基于Data模板开发的PA,用于对外部提供统一的数据访问对象。 |
1468
1469## DisplayOrientation<sup>deprecated<sup>
1470
1471> 从API version 9开始不再维护,建议使用[bundleManager.DisplayOrientation](js-apis-bundleManager.md#displayorientation)替代。
1472
1473屏幕显示方向。
1474
1475 **系统能力:** SystemCapability.BundleManager.BundleFramework
1476
1477| 名称          | 值   | 说明                     |
1478| ------------- | ---- | ------------------------ |
1479| UNSPECIFIED   | 无   | 屏幕方向--不指定。         |
1480| LANDSCAPE     | 无   | 屏幕方向--横屏。           |
1481| PORTRAIT      | 无   | 屏幕方向--竖屏。           |
1482| FOLLOW_RECENT | 无   | 屏幕方向--紧跟上一个组件。 |
1483## LaunchMode<sup>deprecated<sup>
1484
1485> 从API version 9开始不再维护,建议使用[bundleManager.LaunchType](js-apis-bundleManager.md#launchtype)替代。
1486
1487Ability组件的启动模式。
1488
1489 **系统能力:** SystemCapability.BundleManager.BundleFramework
1490
1491| 名称      | 值   | 说明                |
1492| --------- | ---- | ------------------- |
1493| SINGLETON | 0    | Ability只有一个实例。 |
1494| STANDARD  | 1    | Ability有多个实例。   |
1495
1496## AbilitySubType<sup>deprecated<sup>
1497> 从API version 9开始不再维护,不推荐使用。
1498
1499Ability组件的子类型。
1500
1501 **系统能力:** SystemCapability.BundleManager.BundleFramework
1502
1503| 名称        | 值   | 说明                          |
1504| ----------- | ---- | ----------------------------- |
1505| UNSPECIFIED | 0    | 未定义Ability子类型。           |
1506| CA          | 1    | Ability子类型是带有 UI 的服务。 |
1507
1508## ColorMode<sup>deprecated<sup>
1509> 从API version 9开始不再维护,不推荐使用。
1510
1511应用、卡片等的颜色模式。
1512
1513 **系统能力:** SystemCapability.BundleManager.BundleFramework
1514
1515| 名称       | 值   | 说明     |
1516| ---------- | ---- | -------- |
1517| AUTO_MODE  | -1   | 自动模式。 |
1518| DARK_MODE  | 0    | 黑色模式。 |
1519| LIGHT_MODE | 1    | 亮度模式。 |
1520
1521
1522## GrantStatus<sup>deprecated<sup>
1523
1524> 从API version 9开始不再维护,建议使用[bundleManager.PermissionGrantState](js-apis-bundleManager.md#permissiongrantstate)替代。
1525
1526权限授予状态。
1527
1528 **系统能力:** SystemCapability.BundleManager.BundleFramework
1529
1530| 名称               | 值   | 说明         |
1531| ------------------ | ---- | ------------ |
1532| PERMISSION_DENIED  | -1   | 拒绝授予权限。 |
1533| PERMISSION_GRANTED | 0    | 授予权限。     |
1534