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```