HarmonyOS 鸿蒙Next systemShare 系统分享图片不显示
HarmonyOS 鸿蒙Next systemShare 系统分享图片不显示
用下面方法分享图片,预览图不显示
//图片
let data: systemShare.SharedData = new systemShare.SharedData({
utd: utd.UniformDataType.IMAGE,
content:'https://img.zcool.cn/community/01b2b9559f6a2832f875370a0bc7f8.jpg@1280w_1l_2o_100sh.jpg'
})
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 回复
参考下面代码:
import { systemShare } from '@kit.ShareKit';
import { common } from '@kit.AbilityKit';
import { uri } from '@kit.ArkTS';
import { promptAction } from '@kit.ArkUI';
import { uniformTypeDescriptor } from '@kit.ArkData';
@Entry
@Component
struct SharePage {
private context = this.getContext(this) as common.UIAbilityContext
@State message: string = 'Hello World';
// fileUrl: string = 'www.harmonyos.com'
build() {
Row() {
Column() {
Button('分享 - 网站').margin({bottom:10})
.onClick(() => {
this.shareWebSite(this.context, 'www.harmonyos.com', 'HarmonyOS')
})
}
.width('100%')
}
.height('100%')
}
// 分享网站
shareWebSite(context: common.UIAbilityContext, url: string, title: string, thumbnail?: Uint8Array): void {
try {
// 构造ShareData,需配置一条有效数据信息
let data: systemShare.SharedData = new systemShare.SharedData({
utd: uniformTypeDescriptor.UniformDataType.HYPERLINK,
content: url,
title: title,
description: url,
});
let controller: systemShare.ShareController = new systemShare.ShareController(data);
controller.on('dismiss', () => {
promptAction.showToast({
message: 'Share panel disappeared'
});
});
controller.show(context, {
previewMode: systemShare.SharePreviewMode.DETAIL,
selectionMode: systemShare.SelectionMode.SINGLE
});
} catch (e) {
const error = e as Error;
console.error('share error: ' + error.message);
}
}
}
更多关于HarmonyOS 鸿蒙Next systemShare 系统分享图片不显示的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
针对HarmonyOS(鸿蒙)Next systemShare系统分享图片不显示的问题,可能的原因及解决方案如下:
-
权限设置:
- 确认应用已获取存储权限及读取图片的权限。在鸿蒙系统中,应用的权限管理较为严格,若未授权,则可能导致图片无法正常读取和显示。
-
图片路径或格式问题:
- 检查分享的图片路径是否正确,以及图片格式是否被系统支持。若路径错误或格式不兼容,图片将无法显示。
-
系统缓存:
- 尝试清除系统缓存或重启设备,以解决可能因缓存问题导致的图片显示异常。
-
系统更新:
- 确认鸿蒙系统是否为最新版本。系统更新可能修复了旧版本中存在的bug,包括图片分享功能的问题。
-
应用兼容性:
- 检查使用的分享应用是否与鸿蒙系统完全兼容。若应用存在兼容性问题,可能导致图片无法正常显示。
若以上方法均无法解决问题,可能是系统深层次的bug或特定场景下的兼容性问题。此时,建议直接联系鸿蒙系统的官方客服以获取更专业的帮助。如果问题依旧没法解决请联系官网客服,官网地址是: https://www.itying.com/category-93-b0.html