使用Share Kit实现应用间的数据分享的方法

使用Share Kit实现应用间的数据分享的方法

HarmonyOS
2024-08-07 10:21:58
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
mzshj

当分享文件等数据时,应填写对应的utd类型,可以使用

uniformDataDescriptor.getUniformDataTypeByFilenameExtension接口通过后缀名获取utd类型,或者使用uniformDataDescriptor.getUniformDataTypeByMIMEType接口通过MimeType获取对应的utd类型。

import { common } from '@kit.AbilityKit';
import { systemShare } from '@kit.ShareKit';
import { uniformTypeDescriptor as utd } from '@kit.ArkData';

// 构造SharedData, 至少有一条数据
let shareUtd: string = '';
if (canIUse('SystemCapability.DistributedDataManager.UDMF.Core')) {
  shareUtd = utd.UniformDataType.HYPERLINK;
}
let data: systemShare.SharedData = new systemShare.SharedData({
  utd: shareUtd,
  content: 'https://www.harmonyos.com'
});

// 构建ShareController
let controller: systemShare.ShareController = new systemShare.ShareController(data);

// 获取上下文
let context = getContext(this) as common.UIAbilityContext;

// 传入UIAbility的上下文对象及分享配置,进行系统分享面板显示
controller.show(context, {
选用一种分享模式, 例如默认预览
  previewMode: systemShare.SharePreviewMode.DEFAULT,
选用一种选择模式, 例如单选
  selectionMode: systemShare.SelectionMode.SINGLE
});
分享
微博
QQ
微信
回复
2024-08-07 15:15:25
相关问题
如何实现应用组件信息传递?
319浏览 • 1回复 待解决
关系型数据使用分享
1183浏览 • 1回复 待解决
分布式键值数据使用分享
1208浏览 • 1回复 待解决
使用asset-store-kit 管理数据问题
220浏览 • 1回复 待解决
使用自定义弹窗实现分享弹窗
578浏览 • 1回复 待解决
分享沙箱文件,应用分享单个文件
1062浏览 • 1回复 待解决
HarmonyOS原生分享能力使用
770浏览 • 1回复 待解决
安全检测Device Security Kit实现
637浏览 • 1回复 待解决