• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.bundle.defaultAppManager (默认应用管理)
2
3本模块提供查询默认应用的能力,支持查询当前应用是否是默认应用。
4
5> **说明:**
6>
7> 本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
8
9## 导入模块
10
11```ts
12import defaultAppMgr from '@ohos.bundle.defaultAppManager';
13```
14
15## defaultAppMgr.ApplicationType
16
17默认应用的应用类型。
18
19**系统能力:** SystemCapability.BundleManager.BundleFramework.DefaultApp
20
21| 名称   | 值 | 说明                                   |
22| -------- | -------------------------------------- | -------------------------------------- |
23| BROWSER  | "Web Browser" | 默认浏览器。                            |
24| IMAGE    | "Image Gallery" | 默认图片查看器。                         |
25| AUDIO    | "Audio Player" | 默认音频播放器。                         |
26| VIDEO    | "Video Player" | 默认视频播放器。                         |
27| PDF      | "PDF Viewer" | 默认PDF文档查看器。                      |
28| WORD     | "Word Viewer" | 默认WORD文档查看器。                     |
29| EXCEL    | "Excel Viewer" | 默认EXCEL文档查看器。                    |
30| PPT      | "PPT Viewer" | 默认PPT文档查看器。                      |
31
32## defaultAppMgr.isDefaultApplication
33
34isDefaultApplication(type: string): Promise\<boolean>
35
36以异步方法根据系统已定义的应用类型判断当前应用是否是该应用类型的默认应用,使用Promise形式返回结果。
37
38**系统能力:** SystemCapability.BundleManager.BundleFramework.DefaultApp
39
40**参数:**
41
42| 参数名         | 类型     | 必填   | 说明                                      |
43| ----------- | ------ | ---- | --------------------------------------- |
44| type  | string | 是    | 要查询的应用类型,取[ApplicationType](#defaultappmgrapplicationtype)中的值。                           |
45
46**返回值:**
47
48| 类型                        | 说明                 |
49| ------------------------- | ------------------ |
50| Promise\<boolean> | Promise形式返回当前应用是否是默认应用,true表示是默认应用,false表示不是默认应用。 |
51
52
53**示例:**
54
55```ts
56import defaultAppMgr from '@ohos.bundle.defaultAppManager';
57import { BusinessError } from '@ohos.base';
58
59defaultAppMgr.isDefaultApplication(defaultAppMgr.ApplicationType.BROWSER)
60  .then((data) => {
61    console.info('Operation successful. IsDefaultApplication ? ' + JSON.stringify(data));
62  }).catch((error: BusinessError) => {
63  console.error('Operation failed. Cause: ' + JSON.stringify(error));
64});
65```
66
67## defaultAppMgr.isDefaultApplication
68
69isDefaultApplication(type: string, callback: AsyncCallback\<boolean>): void
70
71以异步方法根据系统已定义的应用类型判断当前应用是否是该应用类型的默认应用,使用callback形式返回结果。
72
73**系统能力:** SystemCapability.BundleManager.BundleFramework.DefaultApp
74
75**参数:**
76
77| 参数名         | 类型                              | 必填   | 说明                                      |
78| ----------- | ------------------------------- | ---- | --------------------------------------- |
79| type  | string                          | 是    | 要查询的应用类型,取[ApplicationType](#defaultappmgrapplicationtype)中的值。                            |
80| callback    | AsyncCallback\<boolean> | 是    | 程序启动作为入参的回调函数,返回当前应用是否是默认应用,true表示是默认应用,false表示不是默认应用。 |
81
82**示例:**
83
84```ts
85import defaultAppMgr from '@ohos.bundle.defaultAppManager';
86import { BusinessError } from '@ohos.base';
87
88defaultAppMgr.isDefaultApplication(defaultAppMgr.ApplicationType.BROWSER, (err: BusinessError, data) => {
89  if (err) {
90    console.error('Operation failed. Cause: ' + JSON.stringify(err));
91    return;
92  }
93  console.info('Operation successful. IsDefaultApplication ? ' + JSON.stringify(data));
94});
95```
96
97## defaultAppMgr.isDefaultApplicationSync<sup>10+</sup>
98
99isDefaultApplicationSync(type: string): boolean
100
101以同步方法根据系统已定义的应用类型判断当前应用是否是该应用类型的默认应用,使用boolean形式返回结果。
102
103**系统能力:** SystemCapability.BundleManager.BundleFramework.DefaultApp
104
105**参数:**
106
107| 参数名 | 类型   | 必填 | 说明                                     |
108| -------| ------ | ---- | --------------------------------------- |
109|  type  | string | 是   | 要查询的应用类型,取[ApplicationType](#defaultappmgrapplicationtype)中的值。   |
110
111**返回值:**
112
113| 类型    | 说明                 |
114| ------- | -------------------- |
115| boolean | 返回当前应用是否是默认应用,true表示是默认应用,false表示不是默认应用。 |
116
117
118**示例:**
119
120```ts
121import defaultAppMgr from '@ohos.bundle.defaultAppManager';
122try {
123  let data = defaultAppMgr.isDefaultApplicationSync(defaultAppMgr.ApplicationType.BROWSER)
124  console.info('Operation successful. IsDefaultApplicationSync ? ' + JSON.stringify(data));
125} catch(error) {
126  console.error('Operation failed. Cause: ' + JSON.stringify(error));
127};
128```