
HarmonyOS原生分享能力的使用
官网文档参考:Share Kit简介。
场景一:设备间基于Share kit分享文件
效果图
方案
1. 导入相关模块(systemShare、uniformTypeDescriptor)。
2. 使用systemShare.ShareData构造分享数据,可使用addRecord添加多条分享记录。
3. 构造systemShare.ShareController对象,再使用show方法进行启动分享面板。
4. 双方手机都打开华为分享功能,即可进行文件分享。
常见文件格式及其UniformDataType:
名称 | 值 | 说明 |
TEXT | general.text | 所有文本的基类型,归属类型为OBJECT。 |
PNG | general.png | PNG图片类型,归属类型为IMAGE。 |
com.adobe.pdf | PDF数据类型,归属类型为COMPOSITE_OBJECT。 | |
MP3 | general.mp3 | MP3音频类型,归属类型为AUDIO。 |
TYPE_SCRIPT | general.type-script | TypeScript源代码类型,归属类型为SCRIPT。 |
查看更多类型参考:UniformDataType。
核心代码
场景二:应用间基于Share kit分享文件
效果图
如果应用需要显示在分享面板,则需要构建数据处理能力并按照配置要求在应用配置文件中声明。发送方应用与场景一致,下面介绍接收方应用配置。
1、导入相关模块。
2、目标应用可实现UIAbility,并从want中获取分享数据。
核心代码
3、被分享应用在应用配置文件(src/main/module.json5)配置actrions为ohos.want.action.sendData;uris需穷举所有支持的数据类型。
核心代码
4、社交类应用可以通过意图框架接口捐献联系人信息,可以让用户一步分享到应用内的指定用户。
