# @ohos.wantAgent (WantAgent模块) WantAgent模块提供了创建WantAgent实例、获取实例的用户ID、获取want信息、比较WantAgent实例和获取bundle名称等能力。 > **说明:** > > 本模块首批接口从API version 7开始支持,从API version 9废弃,替换模块为[@ohos.app.ability.wantAgent](js-apis-app-ability-wantAgent.md)。后续版本的新增接口,采用上角标单独标记接口的起始版本。 ## 导入模块 ```ts import WantAgent from '@ohos.wantAgent'; ``` ## WantAgent.getWant getWant(agent: WantAgent, callback: AsyncCallback\): void 获取WantAgent中的Want(callback形式)。 **系统能力**:SystemCapability.Ability.AbilityRuntime.Core **系统API**:该接口为系统接口,三方应用不支持调用。 **参数:** | 参数名 | 类型 | 必填 | 说明 | | -------- | -------------------------- | ---- | ----------------------- | | agent | [WantAgent](js-apis-inner-wantAgent-wantAgentInfo.md) | 是 | WantAgent信息。 | | callback | AsyncCallback\ | 是 | 获取WantAgent中的Want的回调方法。 | **示例:** ```ts import WantAgent from '@ohos.wantAgent'; //wantAgent对象 let wantAgent; //getWantAgent回调 function getWantAgentCallback(err, data) { console.info('==========================>getWantAgentCallback=======================>'); if (err.code == 0) { wantAgent = data; } else { console.error('getWantAgent failed, error: ' + JSON.stringify(err)); return; } //getWant回调 function getWantCallback(err, data) { console.info('==========================>getWantCallback=======================>'); } WantAgent.getWant(wantAgent, getWantCallback); } //WantAgentInfo对象 let wantAgentInfo = { wants: [ { deviceId: 'deviceId', bundleName: 'com.neu.setResultOnAbilityResultTest1', abilityName: 'com.example.test.EntryAbility', action: 'action1', entities: ['entity1'], type: 'MIMETYPE', uri: 'key={true,true,false}', parameters: { mykey0: 2222, mykey1: [1, 2, 3], mykey2: '[1, 2, 3]', mykey3: 'ssssssssssssssssssssssssss', mykey4: [false, true, false], mykey5: ['qqqqq', 'wwwwww', 'aaaaaaaaaaaaaaaaa'], mykey6: true, } } ], operationType: WantAgent.OperationType.START_ABILITIES, requestCode: 0, wantAgentFlags:[WantAgent.WantAgentFlags.UPDATE_PRESENT_FLAG] }; WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback); ``` ## WantAgent.getWant getWant(agent: WantAgent): Promise\ 获取WantAgent中的Want(Promise形式)。 **系统能力**:SystemCapability.Ability.AbilityRuntime.Core **系统API**:该接口为系统接口,三方应用不支持调用。 **参数:** | 参数名 | 类型 | 必填 | 说明 | | ---- | ------------- | ---- | ------------- | | agent | [WantAgent](js-apis-inner-wantAgent-wantAgentInfo.md) | 是 | WantAgent信息。 | **返回值:** | 类型 | 说明 | | ----------------------------------------------------------- | ------------------------------------------------------------ | | Promise\ | 以Promise形式返回Want。 | **示例:** ```ts import WantAgent from '@ohos.wantAgent'; //wantAgent对象 let wantAgent; //WantAgentInfo对象 let wantAgentInfo = { wants: [ { deviceId: 'deviceId', bundleName: 'com.neu.setResultOnAbilityResultTest1', abilityName: 'com.example.test.EntryAbility', action: 'action1', entities: ['entity1'], type: 'MIMETYPE', uri: 'key={true,true,false}', parameters: { mykey0: 2222, mykey1: [1, 2, 3], mykey2: '[1, 2, 3]', mykey3: 'ssssssssssssssssssssssssss', mykey4: [false, true, false], mykey5: ['qqqqq', 'wwwwww', 'aaaaaaaaaaaaaaaaa'], mykey6: true, } } ], operationType: WantAgent.OperationType.START_ABILITIES, requestCode: 0, wantAgentFlags:[WantAgent.WantAgentFlags.UPDATE_PRESENT_FLAG] } WantAgent.getWantAgent(wantAgentInfo).then((data) => { console.info('==========================>getWantAgentCallback=======================>'); wantAgent = data; if (wantAgent) { WantAgent.getWant(wantAgent).then((data) => { console.info('==========================>getWantCallback=======================>'); }); } }); ``` ## WantAgent.getWantAgent getWantAgent(info: WantAgentInfo, callback: AsyncCallback\): void 创建WantAgent(callback形式)。 创建失败返回的WantAgent为空值。 **系统能力**:SystemCapability.Ability.AbilityRuntime.Core **参数:** | 参数名 | 类型 | 必填 | 说明 | | -------- | -------------------------- | ---- | ----------------------- | | info | [WantAgentInfo](js-apis-inner-wantAgent-wantAgentInfo.md) | 是 | WantAgent信息。 | | callback | AsyncCallback\ | 是 | 创建WantAgent的回调方法。 | **示例:** ```ts import WantAgent from '@ohos.wantAgent'; //getWantAgent回调 function getWantAgentCallback(err, data) { if (err.code) { console.info('getWantAgent Callback err:' + JSON.stringify(err)) } else { console.info('getWantAgent Callback success') } } //WantAgentInfo对象 let wantAgentInfo = { wants: [ { deviceId: 'deviceId', bundleName: 'com.neu.setResultOnAbilityResultTest1', abilityName: 'com.example.test.EntryAbility', action: 'action1', entities: ['entity1'], type: 'MIMETYPE', uri: 'key={true,true,false}', parameters: { mykey0: 2222, mykey1: [1, 2, 3], mykey2: '[1, 2, 3]', mykey3: 'ssssssssssssssssssssssssss', mykey4: [false, true, false], mykey5: ['qqqqq', 'wwwwww', 'aaaaaaaaaaaaaaaaa'], mykey6: true, } } ], operationType: WantAgent.OperationType.START_ABILITIES, requestCode: 0, wantAgentFlags:[WantAgent.WantAgentFlags.UPDATE_PRESENT_FLAG] } WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback); ``` ## WantAgent.getWantAgent getWantAgent(info: WantAgentInfo): Promise\ 创建WantAgent(Promise形式)。 创建失败返回的WantAgent为空值。 **系统能力**:SystemCapability.Ability.AbilityRuntime.Core **参数:** | 参数名 | 类型 | 必填 | 说明 | | ---- | ------------- | ---- | ------------- | | info | [WantAgentInfo](js-apis-inner-wantAgent-wantAgentInfo.md) | 是 | WantAgent信息。 | **返回值:** | 类型 | 说明 | | ----------------------------------------------------------- | ------------------------------------------------------------ | | Promise\ | 以Promise形式返回WantAgent。 | **示例:** ```ts import WantAgent from '@ohos.wantAgent'; //WantAgentInfo对象 let wantAgentInfo = { wants: [ { deviceId: 'deviceId', bundleName: 'com.neu.setResultOnAbilityResultTest1', abilityName: 'com.example.test.EntryAbility', action: 'action1', entities: ['entity1'], type: 'MIMETYPE', uri: 'key={true,true,false}', parameters: { mykey0: 2222, mykey1: [1, 2, 3], mykey2: '[1, 2, 3]', mykey3: 'ssssssssssssssssssssssssss', mykey4: [false, true, false], mykey5: ['qqqqq', 'wwwwww', 'aaaaaaaaaaaaaaaaa'], mykey6: true, } } ], operationType: WantAgent.OperationType.START_ABILITIES, requestCode: 0, wantAgentFlags:[WantAgent.WantAgentFlags.UPDATE_PRESENT_FLAG] } WantAgent.getWantAgent(wantAgentInfo).then((data) => { console.info('==========================>getWantAgentCallback=======================>'); }); ``` ## WantAgent.getBundleName getBundleName(agent: WantAgent, callback: AsyncCallback\): void 获取WantAgent实例的Bundle名称(callback形式)。 **系统能力**:SystemCapability.Ability.AbilityRuntime.Core **参数:** | 参数名 | 类型 | 必填 | 说明 | | -------- | ----------------------- | ---- | --------------------------------- | | agent | WantAgent | 是 | WantAgent对象。 | | callback | AsyncCallback\ | 是 | 获取WantAgent实例的包名的回调方法。 | **示例:** ```ts import WantAgent from '@ohos.wantAgent'; //wantAgent对象 let wantAgent; //getWantAgent回调 function getWantAgentCallback(err, data) { console.info('==========================>getWantAgentCallback=======================>'); if (err.code == 0) { wantAgent = data; } else { console.error('getWantAgent failed, error: ' + JSON.stringify(err)); return; } //getBundleName回调 function getBundleNameCallback(err, data) { console.info('==========================>getBundleNameCallback=======================>'); } WantAgent.getBundleName(wantAgent, getBundleNameCallback); } //WantAgentInfo对象 let wantAgentInfo = { wants: [ { deviceId: 'deviceId', bundleName: 'com.neu.setResultOnAbilityResultTest1', abilityName: 'com.example.test.EntryAbility', action: 'action1', entities: ['entity1'], type: 'MIMETYPE', uri: 'key={true,true,false}', parameters: { mykey0: 2222, mykey1: [1, 2, 3], mykey2: '[1, 2, 3]', mykey3: 'ssssssssssssssssssssssssss', mykey4: [false, true, false], mykey5: ['qqqqq', 'wwwwww', 'aaaaaaaaaaaaaaaaa'], mykey6: true, } } ], operationType: WantAgent.OperationType.START_ABILITIES, requestCode: 0, wantAgentFlags:[WantAgent.WantAgentFlags.UPDATE_PRESENT_FLAG] } WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) ``` ## WantAgent.getBundleName getBundleName(agent: WantAgent): Promise\ 获取WantAgent实例的Bundle名称(Promise形式)。 **系统能力**:SystemCapability.Ability.AbilityRuntime.Core **参数:** | 参数名 | 类型 | 必填 | 说明 | | ----- | --------- | ---- | ------------- | | agent | WantAgent | 是 | WantAgent对象。 | **返回值:** | 类型 | 说明 | | ----------------- | ------------------------------------------------ | | Promise\ | 以Promise形式返回获取WantAgent实例的Bundle名称。 | **示例:** ```ts import WantAgent from '@ohos.wantAgent'; //wantAgent对象 let wantAgent; //WantAgentInfo对象 let wantAgentInfo = { wants: [ { deviceId: 'deviceId', bundleName: 'com.neu.setResultOnAbilityResultTest1', abilityName: 'com.example.test.EntryAbility', action: 'action1', entities: ['entity1'], type: 'MIMETYPE', uri: 'key={true,true,false}', parameters: { mykey0: 2222, mykey1: [1, 2, 3], mykey2: '[1, 2, 3]', mykey3: 'ssssssssssssssssssssssssss', mykey4: [false, true, false], mykey5: ['qqqqq', 'wwwwww', 'aaaaaaaaaaaaaaaaa'], mykey6: true, } } ], operationType: WantAgent.OperationType.START_ABILITIES, requestCode: 0, wantAgentFlags:[WantAgent.WantAgentFlags.UPDATE_PRESENT_FLAG] } WantAgent.getWantAgent(wantAgentInfo).then((data) => { console.info('==========================>getWantAgentCallback=======================>'); wantAgent = data; if (wantAgent) { WantAgent.getBundleName(wantAgent).then((data) => { console.info('==========================>getBundleNameCallback=======================>'); }); } }); ``` ## WantAgent.getUid getUid(agent: WantAgent, callback: AsyncCallback\): void 获取WantAgent实例的用户ID(callback形式)。 **系统能力**:SystemCapability.Ability.AbilityRuntime.Core **参数:** | 参数名 | 类型 | 必填 | 说明 | | -------- | ----------------------- | ---- | ----------------------------------- | | agent | WantAgent | 是 | WantAgent对象。 | | callback | AsyncCallback\ | 是 | 获取WantAgent实例的用户ID的回调方法。 | **示例:** ```ts import WantAgent from '@ohos.wantAgent'; //wantAgent对象 let wantAgent; //getWantAgent回调 function getWantAgentCallback(err, data) { console.info('==========================>getWantAgentCallback=======================>'); if (err.code == 0) { wantAgent = data; } else { console.error('getWantAgent failed, error: ' + JSON.stringify(err)); return; } //getUid回调 function getUidCallback(err, data) { console.info('==========================>getUidCallback=======================>'); } WantAgent.getUid(wantAgent, getUidCallback); } //WantAgentInfo对象 let wantAgentInfo = { wants: [ { deviceId: 'deviceId', bundleName: 'com.neu.setResultOnAbilityResultTest1', abilityName: 'com.example.test.EntryAbility', action: 'action1', entities: ['entity1'], type: 'MIMETYPE', uri: 'key={true,true,false}', parameters: { mykey0: 2222, mykey1: [1, 2, 3], mykey2: '[1, 2, 3]', mykey3: 'ssssssssssssssssssssssssss', mykey4: [false, true, false], mykey5: ['qqqqq', 'wwwwww', 'aaaaaaaaaaaaaaaaa'], mykey6: true, } } ], operationType: WantAgent.OperationType.START_ABILITIES, requestCode: 0, wantAgentFlags:[WantAgent.WantAgentFlags.UPDATE_PRESENT_FLAG] } WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) ``` ## WantAgent.getUid getUid(agent: WantAgent): Promise\ 获取WantAgent实例的用户ID(Promise形式)。 **系统能力**:SystemCapability.Ability.AbilityRuntime.Core **参数:** | 参数名 | 类型 | 必填 | 说明 | | ----- | --------- | ---- | ------------- | | agent | WantAgent | 是 | WantAgent对象。 | **返回值:** | 类型 | 说明 | | ----------------------------------------------------------- | ------------------------------------------------------------ | | Promise\ | 以Promise形式返回获取WantAgent实例的用户ID。 | **示例:** ```ts import WantAgent from '@ohos.wantAgent'; //wantAgent对象 let wantAgent; //WantAgentInfo对象 let wantAgentInfo = { wants: [ { deviceId: 'deviceId', bundleName: 'com.neu.setResultOnAbilityResultTest1', abilityName: 'com.example.test.EntryAbility', action: 'action1', entities: ['entity1'], type: 'MIMETYPE', uri: 'key={true,true,false}', parameters: { mykey0: 2222, mykey1: [1, 2, 3], mykey2: '[1, 2, 3]', mykey3: 'ssssssssssssssssssssssssss', mykey4: [false, true, false], mykey5: ['qqqqq', 'wwwwww', 'aaaaaaaaaaaaaaaaa'], mykey6: true, } } ], operationType: WantAgent.OperationType.START_ABILITIES, requestCode: 0, wantAgentFlags:[WantAgent.WantAgentFlags.UPDATE_PRESENT_FLAG] } WantAgent.getWantAgent(wantAgentInfo).then((data) => { console.info('==========================>getWantAgentCallback=======================>'); wantAgent = data; if (wantAgent) { WantAgent.getUid(wantAgent).then((data) => { console.info('==========================>getUidCallback=======================>'); }); } }); ``` ## WantAgent.cancel cancel(agent: WantAgent, callback: AsyncCallback\): void 取消WantAgent实例(callback形式)。 **系统能力**:SystemCapability.Ability.AbilityRuntime.Core **参数:** | 参数名 | 类型 | 必填 | 说明 | | -------- | --------------------- | ---- | --------------------------- | | agent | WantAgent | 是 | WantAgent对象。 | | callback | AsyncCallback\ | 是 | 取消WantAgent实例的回调方法。 | **示例:** ```ts import WantAgent from '@ohos.wantAgent'; //wantAgent对象 let wantAgent; //getWantAgent回调 function getWantAgentCallback(err, data) { console.info('==========================>getWantAgentCallback=======================>'); if (err.code == 0) { wantAgent = data; } else { console.error('getWantAgent failed, error: ' + JSON.stringify(err)); return; } //cancel回调 function cancelCallback(err, data) { console.info('==========================>cancelCallback=======================>'); } WantAgent.cancel(wantAgent, cancelCallback); } //WantAgentInfo对象 let wantAgentInfo = { wants: [ { deviceId: 'deviceId', bundleName: 'com.neu.setResultOnAbilityResultTest1', abilityName: 'com.example.test.EntryAbility', action: 'action1', entities: ['entity1'], type: 'MIMETYPE', uri: 'key={true,true,false}', parameters: { mykey0: 2222, mykey1: [1, 2, 3], mykey2: '[1, 2, 3]', mykey3: 'ssssssssssssssssssssssssss', mykey4: [false, true, false], mykey5: ['qqqqq', 'wwwwww', 'aaaaaaaaaaaaaaaaa'], mykey6: true, } } ], operationType: WantAgent.OperationType.START_ABILITIES, requestCode: 0, wantAgentFlags:[WantAgent.WantAgentFlags.UPDATE_PRESENT_FLAG] } WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) ``` ## WantAgent.cancel cancel(agent: WantAgent): Promise\ 取消WantAgent实例(Promise形式)。 **系统能力**:SystemCapability.Ability.AbilityRuntime.Core **参数:** | 参数名 | 类型 | 必填 | 说明 | | ----- | --------- | ---- | ------------- | | agent | WantAgent | 是 | WantAgent对象。 | **返回值:** | 类型 | 说明 | | --------------- | ------------------------------- | | Promise\ | 以Promise形式获取异步返回结果。 | **示例:** ```ts import WantAgent from '@ohos.wantAgent'; //wantAgent对象 let wantAgent; //WantAgentInfo对象 let wantAgentInfo = { wants: [ { deviceId: 'deviceId', bundleName: 'com.neu.setResultOnAbilityResultTest1', abilityName: 'com.example.test.EntryAbility', action: 'action1', entities: ['entity1'], type: 'MIMETYPE', uri: 'key={true,true,false}', parameters: { mykey0: 2222, mykey1: [1, 2, 3], mykey2: '[1, 2, 3]', mykey3: 'ssssssssssssssssssssssssss', mykey4: [false, true, false], mykey5: ['qqqqq', 'wwwwww', 'aaaaaaaaaaaaaaaaa'], mykey6: true, } } ], operationType: WantAgent.OperationType.START_ABILITIES, requestCode: 0, wantAgentFlags:[WantAgent.WantAgentFlags.UPDATE_PRESENT_FLAG] } WantAgent.getWantAgent(wantAgentInfo).then((data) => { console.info('==========================>getWantAgentCallback=======================>'); wantAgent = data; if (wantAgent) { WantAgent.cancel(wantAgent).then((data) => { console.info('==========================>cancelCallback=======================>'); }); } }); ``` ## WantAgent.trigger trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: Callback\): void 主动激发WantAgent实例(callback形式)。 **系统能力**:SystemCapability.Ability.AbilityRuntime.Core **参数:** | 参数名 | 类型 | 必填 | 说明 | | ----------- | ----------------------------- | ---- | ------------------------------- | | agent | WantAgent | 是 | WantAgent对象。 | | triggerInfo | [TriggerInfo](js-apis-inner-wantAgent-triggerInfo.md) | 是 | TriggerInfo对象。 | | callback | AsyncCallback\ | 否 | 主动激发WantAgent实例的回调方法。 | **示例:** ```ts import WantAgent from '@ohos.wantAgent'; //wantAgent对象 let wantAgent; //getWantAgent回调 function getWantAgentCallback(err, data) { console.info('==========================>getWantAgentCallback=======================>'); if (err.code == 0) { wantAgent = data; } else { console.error('getWantAgent failed, error: ' + JSON.stringify(err)); return; } //trigger回调 function triggerCallback(data) { console.info('==========================>triggerCallback=======================>'); } var triggerInfo = { code:0 } WantAgent.trigger(wantAgent, triggerInfo, triggerCallback) } //WantAgentInfo对象 let wantAgentInfo = { wants: [ { deviceId: 'deviceId', bundleName: 'com.neu.setResultOnAbilityResultTest1', abilityName: 'com.example.test.EntryAbility', action: 'action1', entities: ['entity1'], type: 'MIMETYPE', uri: 'key={true,true,false}', parameters: { mykey0: 2222, mykey1: [1, 2, 3], mykey2: '[1, 2, 3]', mykey3: 'ssssssssssssssssssssssssss', mykey4: [false, true, false], mykey5: ['qqqqq', 'wwwwww', 'aaaaaaaaaaaaaaaaa'], mykey6: true, } } ], operationType: WantAgent.OperationType.START_ABILITIES, requestCode: 0, wantAgentFlags:[WantAgent.WantAgentFlags.UPDATE_PRESENT_FLAG] } WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) ``` ## WantAgent.equal equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallback\): void 判断两个WantAgent实例是否相等(callback形式),以此来判断是否是来自同一应用的相同操作。 **系统能力**:SystemCapability.Ability.AbilityRuntime.Core **参数:** | 参数名 | 类型 | 必填 | 说明 | | ---------- | ------------------------ | ---- | --------------------------------------- | | agent | WantAgent | 是 | WantAgent对象。 | | otherAgent | WantAgent | 是 | WantAgent对象。 | | callback | AsyncCallback\ | 是 | 判断两个WantAgent实例是否相等的回调方法。 | **示例:** ```ts import WantAgent from '@ohos.wantAgent'; //wantAgent对象 let wantAgent1; let wantAgent2; //getWantAgent回调 function getWantAgentCallback(err, data) { console.info('==========================>getWantAgentCallback=======================>'); if (err.code == 0) { wantAgent1 = data; wantAgent2 = data; } else { console.error('getWantAgent failed, error: ' + JSON.stringify(err)); return; } //equal回调 function equalCallback(err, data) { console.info('==========================>equalCallback=======================>'); } WantAgent.equal(wantAgent1, wantAgent2, equalCallback) } //WantAgentInfo对象 let wantAgentInfo = { wants: [ { deviceId: 'deviceId', bundleName: 'com.neu.setResultOnAbilityResultTest1', abilityName: 'com.example.test.EntryAbility', action: 'action1', entities: ['entity1'], type: 'MIMETYPE', uri: 'key={true,true,false}', parameters: { mykey0: 2222, mykey1: [1, 2, 3], mykey2: '[1, 2, 3]', mykey3: 'ssssssssssssssssssssssssss', mykey4: [false, true, false], mykey5: ['qqqqq', 'wwwwww', 'aaaaaaaaaaaaaaaaa'], mykey6: true, } } ], operationType: WantAgent.OperationType.START_ABILITIES, requestCode: 0, wantAgentFlags:[WantAgent.WantAgentFlags.UPDATE_PRESENT_FLAG] } WantAgent.getWantAgent(wantAgentInfo, getWantAgentCallback) ``` ## WantAgent.equal equal(agent: WantAgent, otherAgent: WantAgent): Promise\ 判断两个WantAgent实例是否相等(Promise形式),以此来判断是否是来自同一应用的相同操作。 **系统能力**:SystemCapability.Ability.AbilityRuntime.Core **参数:** | 参数名 | 类型 | 必填 | 说明 | | ---------- | --------- | ---- | ------------- | | agent | WantAgent | 是 | WantAgent对象。 | | otherAgent | WantAgent | 是 | WantAgent对象。 | **返回值:** | 类型 | 说明 | | ----------------------------------------------------------- | ------------------------------------------------------------ | | Promise\ | 以Promise形式返回获取判断两个WantAgent实例是否相等的结果。 | **示例:** ```ts import WantAgent from '@ohos.wantAgent'; //wantAgent对象 let wantAgent1; let wantAgent2; //WantAgentInfo对象 let wantAgentInfo = { wants: [ { deviceId: 'deviceId', bundleName: 'com.neu.setResultOnAbilityResultTest1', abilityName: 'com.example.test.EntryAbility', action: 'action1', entities: ['entity1'], type: 'MIMETYPE', uri: 'key={true,true,false}', parameters: { mykey0: 2222, mykey1: [1, 2, 3], mykey2: '[1, 2, 3]', mykey3: 'ssssssssssssssssssssssssss', mykey4: [false, true, false], mykey5: ['qqqqq', 'wwwwww', 'aaaaaaaaaaaaaaaaa'], mykey6: true, } } ], operationType: WantAgent.OperationType.START_ABILITIES, requestCode: 0, wantAgentFlags:[WantAgent.WantAgentFlags.UPDATE_PRESENT_FLAG] } WantAgent.getWantAgent(wantAgentInfo).then((data) => { console.info('==========================>getWantAgentCallback=======================>'); wantAgent1 = data; wantAgent2 = data; if (data) { WantAgent.equal(wantAgent1, wantAgent2).then((data) => { console.info('==========================>equalCallback=======================>'); }); } }); WantAgent.equal(wantAgent1, wantAgent2).then((data) => { console.info('==========================>equalCallback=======================>'); }); ``` ## WantAgentFlags **系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core | 名称 | 值 | 说明 | | ------------------- | -------------- | ------------------------------------------------------------ | | ONE_TIME_FLAG | 0 | WantAgent仅能使用一次。 | | NO_BUILD_FLAG | 1 | 如果说明WantAgent对象不存在,则不创建它,直接返回null。 | | CANCEL_PRESENT_FLAG | 2 | 在生成一个新的WantAgent对象前取消已存在的一个WantAgent对象。 | | UPDATE_PRESENT_FLAG | 3 | 使用新的WantAgent的额外数据替换已存在的WantAgent中的额外数据。 | | CONSTANT_FLAG | 4 | WantAgent是不可变的。 | | REPLACE_ELEMENT | 5 | 当前Want中的element属性可被WantAgent.trigger()中Want的element属性取代 | | REPLACE_ACTION | 6 | 当前Want中的action属性可被WantAgent.trigger()中Want的action属性取代 | | REPLACE_URI | 7 | 当前Want中的uri属性可被WantAgent.trigger()中Want的uri属性取代 | | REPLACE_ENTITIES | 8 | 当前Want中的entities属性可被WantAgent.trigger()中Want的entities属性取代 | | REPLACE_BUNDLE | 9 | 当前Want中的bundleName属性可被WantAgent.trigger()中Want的bundleName属性取代 | ## OperationType **系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core | 名称 | 值 | 说明 | | ----------------- | ------------- | ------------------------- | | UNKNOWN_TYPE | 0 | 不识别的类型。 | | START_ABILITY | 1 | 开启一个有页面的Ability。 | | START_ABILITIES | 2 | 开启多个有页面的Ability。 | | START_SERVICE | 3 | 开启一个无页面的ability。 | | SEND_COMMON_EVENT | 4 | 发送一个公共事件。 | ## CompleteData **系统能力**:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core | 名称 | 类型 | 必填 | 说明 | | -------------- | ------------------------------ | ---- | ---------------------- | | info | WantAgent | 是 | 触发的wantAgent。 | | want | Want | 是 | 存在的被触发的want。 | | finalCode | number | 是 | 触发wantAgent的请求代码。| | finalData | string | 是 | 公共事件收集的最终数据。 | | extraInfo | {[key: string]: any} | 否 | 额外数据。 |