卡片双向通信方法
其实双向通信的方法很简单,就是调用这两个方法
卡片 =》 应用
postCardAction(this, {
action: 'call',
abilityName: 'EntryAbility', // 只能跳转到当前应用下的UIAbility
params: {
// 使用call方式 需要第二个参数
method: 'updateFormId', // 名字必须叫method method的值是在ability中监听的方法名
formId: this.formId
}
})
卡片传输到应用的难点:
1.在EntryAbility中的onCreate/onNewWant进行接收
2.router和call接收的方式不一样
3.需要将接收的数据存储到首选项,然后通过AppStorage进行UIAbility与Page页面的交互
应用 =》 卡片
// 添加卡片的时候,将数据推送过去
formProvider.updateForm(res.formId, formBindingData.createFormBindingData({
num: AppStorage.get("num")
}))
应用传输到卡片的难点
1. 只需要通过@LocalStorageProp进行接收即可
实际案例
参考文章: