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

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

HarmonyOS
2024-08-07 10:21:58
1490浏览
收藏 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
});
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
分享
微博
QQ
微信
回复
2024-08-07 15:15:25


相关问题
HarmonyOS Share Kit使用
872浏览 • 1回复 待解决
如何实现应用组件信息传递?
1229浏览 • 1回复 待解决
关系型数据使用分享
2208浏览 • 1回复 待解决
鸿蒙如何实现应用跳转
253浏览 • 0回复 待解决
分布式键值数据使用分享
2207浏览 • 1回复 待解决