diff --git a/zh-cn/application-dev/reference/apis/js-apis-defaultAppManager.md b/zh-cn/application-dev/reference/apis/js-apis-defaultAppManager.md index 769d5dc52877891d8da87c7732499a6e2cc30d46..df7d22c9a1810e2e8a7e8c575753a2b2b95b9f7e 100644 --- a/zh-cn/application-dev/reference/apis/js-apis-defaultAppManager.md +++ b/zh-cn/application-dev/reference/apis/js-apis-defaultAppManager.md @@ -99,6 +99,39 @@ defaultAppMgr.isDefaultApplication(defaultAppMgr.ApplicationType.BROWSER, (err, }); ``` +## defaultAppMgr.isDefaultApplicationSync10+ + +isDefaultApplicationSync(type: string): boolean; + +以同步方法根据系统已定义的应用类型判断当前应用是否是该应用类型的默认应用,使用boolean形式返回结果。 + +**系统能力:** SystemCapability.BundleManager.BundleFramework.DefaultApp + +**参数:** + +| 参数名 | 类型 | 必填 | 说明 | +| -------| ------ | ---- | --------------------------------------- | +| type | string | 是 | 要查询的应用类型,取[ApplicationType](#defaultappmgrapplicationtype)中的值。 | + +**返回值:** + +| 类型 | 说明 | +| ------- | -------------------- | +| boolean | Promise形式返回当前应用是否是默认应用,true表示是默认应用,false表示不是默认应用。 | + + +**示例:** + +```ts +import defaultAppMgr from '@ohos.bundle.defaultAppManager'; +defaultAppMgr.isDefaultApplicationSync(defaultAppMgr.ApplicationType.BROWSER) +.then((data) => { + console.info('Operation successful. IsDefaultApplicationSync ? ' + JSON.stringify(data)); +}).catch((error) => { + console.error('Operation failed. Cause: ' + JSON.stringify(error)); +}); +``` + ## defaultAppMgr.getDefaultApplication getDefaultApplication(type: string, userId?: number): Promise\ @@ -255,6 +288,63 @@ defaultAppMgr.getDefaultApplication("image/png", (err, data) => { }); ``` +## defaultAppMgr.getDefaultApplicationSync10+ + +getDefaultApplicationSync(type: string, userId?: number): BundleInfo; + +以同步方法根据系统已定义的应用类型或者符合媒体类型格式(type/subtype)的文件类型获取默认应用信息,使用BundleInfo返回结果。 + +**需要权限:** ohos.permission.GET_DEFAULT_APPLICATION + +**系统能力:** SystemCapability.BundleManager.BundleFramework.DefaultApp + +**系统API:** 此接口为系统接口。 + +**参数:** + +| 参数名 | 类型 | 必填 | 说明 | +| -------| ------ | ---- | --------------------------------------- | +| type | string | 是 | 要查询的应用类型,取[ApplicationType](#defaultappmgrapplicationtype)中的值,或者符合媒体类型格式的文件类型。| +| userId | number | 否 | 用户ID。默认值:调用方所在用户。 | + +**返回值:** + +| 类型 | 说明 | +| ------------------------------------------ | -------------------- | +| [BundleInfo](js-apis-bundle-BundleInfo.md) | 返回的默认应用包信息。| + +**错误码:** + +以下错误码的详细介绍请参见[ohos.bundle错误码](../errorcodes/errorcode-bundle.md)。 + +| 错误码ID | 错误信息 | +| -------- | ----------------------------------------- | +| 17700004 | The specified user ID is not found. | +| 17700023 | The specified default app does not exist. | +| 17700025 | The specified type is invalid. | + +**示例:** + +```ts +import defaultAppMgr from '@ohos.bundle.defaultAppManager'; +defaultAppMgr.getDefaultApplicationSync(defaultAppMgr.ApplicationType.BROWSER) +.then((data) => { + console.info('Operation successful. bundleInfo: ' + JSON.stringify(data)); +}) +.catch((error) => { + console.error('Operation failed. Cause: ' + JSON.stringify(error)); +}); + +defaultAppMgr.getDefaultApplicationSync("image/png") +.then((data) => { + console.info('Operation successful. bundleInfo: ' + JSON.stringify(data)); +}) +.catch((error) => { + console.error('Operation failed. Cause: ' + JSON.stringify(error)); +}); +``` + + ## defaultAppMgr.setDefaultApplication setDefaultApplication(type: string, elementName: ElementName, userId?: number): Promise\ @@ -446,6 +536,78 @@ defaultAppMgr.setDefaultApplication("image/png", { }); ``` +## defaultAppMgr.setDefaultApplicationSync10+ + +setDefaultApplicationSync(type: string, elementName: ElementName, userId?: number): void; + +以同步方法根据系统已定义的应用类型或者符合媒体类型格式(type/subtype)的文件类型设置默认应用,返回undefined。 + +**需要权限:** ohos.permission.SET_DEFAULT_APPLICATION + +**系统能力:** SystemCapability.BundleManager.BundleFramework.DefaultApp + +**系统API:** 此接口为系统接口。 + +**参数:** + +| 参数名 | 类型 | 必填 | 说明 | +| ----------- | ------ | ---- | --------------------------------------- | +| type | string | 是 | 要设置的应用类型,取[ApplicationType](#defaultappmgrapplicationtype)中的值,或者符合媒体类型格式的文件类型。| +| elementName | [ElementName](js-apis-bundle-ElementName.md) | 是 | 要设置为默认应用的组件信息。 | +| userId | number | 否 | 用户ID。默认值:调用方所在用户。 | + +**返回值:** + +| 类型 | 说明 | +| ------ | ---------------------------------- | +| void | undefined对象,无返回结果的undefined对象。 | + +**错误码:** + +以下错误码的详细介绍请参见[ohos.bundle错误码](../errorcodes/errorcode-bundle.md)。 + +| 错误码ID | 错误信息 | +| -------- | ---------------------------------------------- | +| 17700004 | The specified user ID is not found. | +| 17700025 | The specified type is invalid. | +| 17700028 | The specified ability does not match the type. | + +**示例:** + +```ts +import defaultAppMgr from '@ohos.bundle.defaultAppManager'; +defaultAppMgr.setDefaultApplicationSync(defaultAppMgr.ApplicationType.BROWSER, { + bundleName: "com.example.myapplication", + moduleName: "module01", + abilityName: "EntryAbility" +}).then((data) => { + console.info('Operation successful.'); +}).catch((error) => { + console.error('Operation failed. Cause: ' + JSON.stringify(error)); +}); + +let userId = 100; +defaultAppMgr.setDefaultApplicationSync(defaultAppMgr.ApplicationType.BROWSER, { + bundleName: "com.example.myapplication", + moduleName: "module01", + abilityName: "EntryAbility" +}, userId).then((data) => { + console.info('Operation successful.'); +}).catch((error) => { + console.error('Operation failed. Cause: ' + JSON.stringify(error)); +}); + +defaultAppMgr.setDefaultApplicationSync("image/png", { + bundleName: "com.example.myapplication", + moduleName: "module01", + abilityName: "EntryAbility" +}, userId).then((data) => { + console.info('Operation successful.'); +}).catch((error) => { + console.error('Operation failed. Cause: ' + JSON.stringify(error)); +}); +``` + ## defaultAppMgr.resetDefaultApplication resetDefaultApplication(type: string, userId?: number): Promise\ @@ -595,167 +757,6 @@ defaultAppMgr.resetDefaultApplication("image/png", (err, data) => { }); ``` -## defaultAppMgr.isDefaultApplicationSync10+ - -isDefaultApplicationSync(type: string): boolean; - -以同步方法根据系统已定义的应用类型判断当前应用是否是该应用类型的默认应用,使用boolean形式返回结果。 - -**系统能力:** SystemCapability.BundleManager.BundleFramework.DefaultApp - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------| ------ | ---- | --------------------------------------- | -| type | string | 是 | 要查询的应用类型,取[ApplicationType](#defaultappmgrapplicationtype)中的值。 | - -**返回值:** - -| 类型 | 说明 | -| ------- | -------------------- | -| boolean | Promise形式返回当前应用是否是默认应用,true表示是默认应用,false表示不是默认应用。 | - - -**示例:** - -```ts -import defaultAppMgr from '@ohos.bundle.defaultAppManager'; -defaultAppMgr.isDefaultApplicationSync(defaultAppMgr.ApplicationType.BROWSER) -.then((data) => { - console.info('Operation successful. IsDefaultApplicationSync ? ' + JSON.stringify(data)); -}).catch((error) => { - console.error('Operation failed. Cause: ' + JSON.stringify(error)); -}); -``` - -## defaultAppMgr.getDefaultApplicationSync10+ - -getDefaultApplicationSync(type: string, userId?: number): BundleInfo; - -以同步方法根据系统已定义的应用类型或者符合媒体类型格式(type/subtype)的文件类型获取默认应用信息,使用BundleInfo返回结果。 - -**需要权限:** ohos.permission.GET_DEFAULT_APPLICATION - -**系统能力:** SystemCapability.BundleManager.BundleFramework.DefaultApp - -**系统API:** 此接口为系统接口。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| -------| ------ | ---- | --------------------------------------- | -| type | string | 是 | 要查询的应用类型,取[ApplicationType](#defaultappmgrapplicationtype)中的值,或者符合媒体类型格式的文件类型。| -| userId | number | 否 | 用户ID。默认值:调用方所在用户。 | - -**返回值:** - -| 类型 | 说明 | -| ------------------------------------------ | -------------------- | -| [BundleInfo](js-apis-bundle-BundleInfo.md) | 返回的默认应用包信息。| - -**错误码:** - -以下错误码的详细介绍请参见[ohos.bundle错误码](../errorcodes/errorcode-bundle.md)。 - -| 错误码ID | 错误信息 | -| -------- | ----------------------------------------- | -| 17700004 | The specified user ID is not found. | -| 17700023 | The specified default app does not exist. | -| 17700025 | The specified type is invalid. | - -**示例:** - -```ts -import defaultAppMgr from '@ohos.bundle.defaultAppManager'; -defaultAppMgr.getDefaultApplicationSync(defaultAppMgr.ApplicationType.BROWSER) -.then((data) => { - console.info('Operation successful. bundleInfo: ' + JSON.stringify(data)); -}) -.catch((error) => { - console.error('Operation failed. Cause: ' + JSON.stringify(error)); -}); - -defaultAppMgr.getDefaultApplicationSync("image/png") -.then((data) => { - console.info('Operation successful. bundleInfo: ' + JSON.stringify(data)); -}) -.catch((error) => { - console.error('Operation failed. Cause: ' + JSON.stringify(error)); -}); -``` - -## defaultAppMgr.setDefaultApplicationSync10+ - -setDefaultApplicationSync(type: string, elementName: ElementName, userId?: number): void; - -以同步方法根据系统已定义的应用类型或者符合媒体类型格式(type/subtype)的文件类型设置默认应用,返回undefined。 - -**需要权限:** ohos.permission.SET_DEFAULT_APPLICATION - -**系统能力:** SystemCapability.BundleManager.BundleFramework.DefaultApp - -**系统API:** 此接口为系统接口。 - -**参数:** - -| 参数名 | 类型 | 必填 | 说明 | -| ----------- | ------ | ---- | --------------------------------------- | -| type | string | 是 | 要设置的应用类型,取[ApplicationType](#defaultappmgrapplicationtype)中的值,或者符合媒体类型格式的文件类型。| -| elementName | [ElementName](js-apis-bundle-ElementName.md) | 是 | 要设置为默认应用的组件信息。 | -| userId | number | 否 | 用户ID。默认值:调用方所在用户。 | - -**返回值:** - -| 类型 | 说明 | -| ------ | ---------------------------------- | -| void | undefined对象,无返回结果的undefined对象。 | - -**错误码:** - -以下错误码的详细介绍请参见[ohos.bundle错误码](../errorcodes/errorcode-bundle.md)。 - -| 错误码ID | 错误信息 | -| -------- | ---------------------------------------------- | -| 17700004 | The specified user ID is not found. | -| 17700025 | The specified type is invalid. | -| 17700028 | The specified ability does not match the type. | - -**示例:** - -```ts -import defaultAppMgr from '@ohos.bundle.defaultAppManager'; -defaultAppMgr.setDefaultApplicationSync(defaultAppMgr.ApplicationType.BROWSER, { - bundleName: "com.example.myapplication", - moduleName: "module01", - abilityName: "EntryAbility" -}).then((data) => { - console.info('Operation successful.'); -}).catch((error) => { - console.error('Operation failed. Cause: ' + JSON.stringify(error)); -}); - -let userId = 100; -defaultAppMgr.setDefaultApplicationSync(defaultAppMgr.ApplicationType.BROWSER, { - bundleName: "com.example.myapplication", - moduleName: "module01", - abilityName: "EntryAbility" -}, userId).then((data) => { - console.info('Operation successful.'); -}).catch((error) => { - console.error('Operation failed. Cause: ' + JSON.stringify(error)); -}); - -defaultAppMgr.setDefaultApplicationSync("image/png", { - bundleName: "com.example.myapplication", - moduleName: "module01", - abilityName: "EntryAbility" -}, userId).then((data) => { - console.info('Operation successful.'); -}).catch((error) => { - console.error('Operation failed. Cause: ' + JSON.stringify(error)); -}); -``` - ## defaultAppMgr.resetDefaultApplicationSync10+ resetDefaultApplicationSync(type: string, userId?: number): void;