HarmonyOS鸿蒙Next中碰一碰的applink中,对方接收方怎么获取extraData,有案例吗?
HarmonyOS鸿蒙Next中碰一碰的applink中,对方接收方怎么获取extraData,有案例吗? 全网都没找到案例代码,我看好像要新写一个 ShareExtensionAbility,但API17的手机没触发生命周期,module.json5也配置了,发送方走的是碰一碰 systemShare.SharedData,目前接受方是在EntryAbility的onCreate的生命周期,处理want-url的applinking直接拉起应用后续处理
{
"module": {
// ...
"extensionAbilities": [
{
"name": "ShareExtAbility",
"icon": "$media:icon",
"description": "share",
"type": "share",
"exported": true,
"srcEntry": "./ets/ShareExtAbility/ShareExtAbility.ets"
}
]
}
}
更多关于HarmonyOS鸿蒙Next中碰一碰的applink中,对方接收方怎么获取extraData,有案例吗?的实战教程也可以访问 https://www.itying.com/category-93-b0.html
楼主看看这个,有好几种分享模式:https://gitee.com/harmonyos_samples/share-kit_-sample-code_-clientdemo_-arkts/tree/master
更多关于HarmonyOS鸿蒙Next中碰一碰的applink中,对方接收方怎么获取extraData,有案例吗?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
看过了,没看到share里面构建extraData的案例,用extraData的地方也没看明白到底是怎么用的,
没看见extraData的获取。。。。。。
在HarmonyOS Next中,接收方通过UIAbility的onCreate()回调参数获取extraData。示例代码如下:
import UIAbility from '@ohos.app.ability.UIAbility';
export default class EntryAbility extends UIAbility {
onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void {
let extraData = want.parameters?.extraData;
// 处理extraData数据
}
}
其中want.parameters对象包含applink传递的所有参数,extraData为碰一碰传递的特定数据字段。
在HarmonyOS Next中,接收方通过AppLink获取extraData应在EntryAbility的onCreate中处理want参数。示例代码如下:
import UIAbility from '@ohos.app.ability.UIAbility';
export default class EntryAbility extends UIAbility {
onCreate(want: Want, launchParam: AbilityConstant.LaunchParam) {
// 获取AppLink传递的extraData
let extraData = want.parameters?.extraData;
if (extraData) {
// 处理extraData逻辑
console.info('Received extraData: ' + JSON.stringify(extraData));
}
}
}
配置module.json5中的skills字段支持AppLink:
{
"module": {
"abilities": [
{
"name": "EntryAbility",
"skills": [
{
"actions": ["ohos.want.action.viewData"],
"entities": ["entity.system.browsable"],
"uris": [
{
"scheme": "applink",
"host": "your.host.name"
}
]
}
]
}
]
}
}
使用ShareExtensionAbility适用于系统分享场景,但AppLink直接拉起应用时,EntryAbility的onCreate是正确入口。确保发送方通过systemShare.SharedData正确设置extraData参数。