HarmonyOS 鸿蒙Next systemShare 分享缩略图显示问题

发布于 1周前 作者 sinazl 来自 鸿蒙OS

HarmonyOS 鸿蒙Next systemShare 分享缩略图显示问题
需要一个系统分享,显示缩略图,但是 systemShare.SharedDatathumbnail 缩略图需要的是 Uint8Array 格式,但需要显示一个网络图标,URL是icon,如何在分享的时候显示缩略图呢?

let icon = 'https://xxx.jpg'
const data: systemShare.SharedData = new systemShare.SharedData({
  utd: utd.UniformDataType.HYPERLINK,
  title: '分享链接',
  thumbnail: icon,
  description: '分享内容',
  content: 'https://www.baidu.com'
})
let controller: systemShare.ShareController = new systemShare.ShareController(data);
// 获取UIAbility上下文对象
let context: common.UIAbilityContext = getContext() as common.UIAbilityContext;
controller.show(context, {
  previewMode: systemShare.SharePreviewMode.DETAIL, //详细预览图模式
  selectionMode: systemShare.SelectionMode.SINGLE
});

更多关于HarmonyOS 鸿蒙Next systemShare 分享缩略图显示问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

系统分享不支持分享远端图片,可以加个逻辑先保存网络到本地获取路径后再进行分享,参考示例如下:

/** 图片分享 */
private async handelImageShare(): Promise<void> {
  const contextFaker: Context = getContext(this);
  let filePath = contextFaker.filesDir + '/exampleImage.jpg';
  let shareData: systemShare.SharedData = new systemShare.SharedData({
    utd: utd.UniformDataType.IMAGE,
    uri: fileUri.getUriFromPath(filePath),
    title: '图片标题', // 不传title字段时,显示图片文件名
    description: '图片描述' // 不传description字段时,显示图片大小
  });
  let controller: systemShare.ShareController = new systemShare.ShareController(shareData);
  let context = getContext(this) as common.UIAbilityContext;
  controller.show(context, {
    previewMode: this.imagePreviewMode == 0 ? systemShare.SharePreviewMode.DEFAULT : systemShare.SharePreviewMode.DETAIL
  });
}

更多关于HarmonyOS 鸿蒙Next systemShare 分享缩略图显示问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


针对HarmonyOS(鸿蒙)Next systemShare分享缩略图显示问题,以下提供可能的解决方案:

  1. 检查缩略图生成逻辑: 确保在生成分享缩略图时,图片路径、格式及大小均正确无误。鸿蒙系统对缩略图的尺寸和格式可能有特定要求,需确保满足这些要求。

  2. 更新系统组件: 检查鸿蒙系统及其相关组件(如分享组件)是否已更新到最新版本。有时,系统更新会修复已知的显示问题。

  3. 检查权限设置: 确保应用已获取读取和写入存储的权限,以及生成和显示缩略图所需的其他相关权限。

  4. 清理缓存: 尝试清理应用缓存和系统缓存,以消除因缓存问题导致的缩略图显示异常。

  5. 检查代码实现: 如果问题依旧存在,建议检查分享功能的代码实现,特别是与缩略图生成和显示相关的部分。确保代码逻辑正确,且符合鸿蒙系统的开发规范。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部