通过Promise来使用Sharekit时,systemShare会为undefined,会走Error逻辑并报错:
TypeError: Cannot read property SharedData of undefined@36b6d299。
代码如下:
openShare(): Promise < void> {
return new Promise((resolve, reject) => {
try {
let data: systemShare.SharedData = new systemShare.SharedData({
utd: utd.UniformDataType.PLAIN_TEXT,
content: 'Hello HarmonyOS'
});
data.addRecord({
utd: utd.UniformDataType.PNG,
uri: ''
});
let controller: systemShare.ShareController = new systemShare.ShareController(data);
// 获取UIAbility上下文对象
let context: common.UIAbilityContext = getContext(this) as common.UIAbilityContext;
controller.show(context, {
previewMode: systemShare.SharePreviewMode.DETAIL,
selectionMode: systemShare.SelectionMode.SINGLE
});
resolve()
} catch (e) {
console.error(e.message)
this.errmsg = e.message
reject(e)
}
})
}
参考下面代码,目前只支持华为分享:
参数参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/share-system-share-V5\#section20696483813