# GesturesShare
**Repository Path**: harmonyos_samples/GesturesShare
## Basic Information
- **Project Name**: GesturesShare
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 2
- **Forks**: 2
- **Created**: 2025-09-04
- **Last Updated**: 2025-10-15
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 基于Share Kit实现隔空传送分享文件和链接
## 项目简介
本示例基于Share Kit实现快速跨设备分享文件,结合App Linking实现了快速跨设备分享链接并直接进入应用内视频播放页面的功能。通过harmonyShare.on('gesturesShare')方法注册隔空传送监听事件,并在回调中使用sharableTarget.share()方法分享文件或者分享App Linking链接,从而实现让用户通过“一抓一放”实现跨端传输。
## 效果预览
| 首页 | 隔空传送文件分享页面 | 隔空传送链接分享页面 |
|----------------------------------------------------|---------------------------------------------------|----------------------------------------------------|
|
|
|
|
## 使用说明
1. 在运行项目前,需要完成App Linking的配置,以及对应用进行手动签名,具体可以参考[使用App Linking实现应用间跳转](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/app-linking-startup)。
2. 在完成App Linking的配置后,请前往[ShareModel.ets](feature/share/src/main/ets/model/ShareModel.ets)文件,将share()方法中的content参数替换为真实可用的链接地址,同时将[module.json5](product/entry/src/main/module.json5)文件中uris的host修改为可用的域名。
3. 设备A和设备B均安装运行示例代码,在亮屏、解锁的状态下并且都已开启华为分享服务(系统默认开启)。
4. 打开[设备侧隔空传送开关](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/gestures-share-open)。
5. 设备A进入首页点击隔空传送文件按钮,进入隔空传送文件页面,勾选文件后通过隔空传送手势分享文件到设备B。
6. 设备A进入首页点击隔空传送链接按钮,进入隔空传送链接页面,在当前页面通过隔空传送手势分享链接到设备B,设备B直接拉起应用进入视频播放界面。
## 工程目录
```
├──common/src/main/ets
│ ├──constants
│ │ └──BreakpointConstants.ets //断点常量定义
│ ├──utils
│ │ ├──BreakpointSystem.ets //断点系统工具
│ │ └──FileUtil.ets //文件处理工具类
│ └──resources //资源目录
├──feature
│ └──share/src/main/ets
│ ├──model
│ │ ├──FileData.ets //文件数据模型
│ │ └──ShareModel.ets //隔空传送模块
│ ├──view
│ │ ├──FileSharePageComponent.ets //隔空传送文件分享页面
│ │ └──LinkSharePageComponent.ets //隔空传送链接分享页面
│ └──resources //资源目录
├──product
│ └──entry/src/main/ets
│ ├──entryability
│ │ └──EntryAbility.ets //程序入口类
│ ├──entrybackupability
│ │ └──EntryBackupAbility.ets //数据备份恢复类
│ ├──pages
│ │ └──Index.ets //首页
│ └──resources //资源目录
└──service
└──index.html //视频播放Web页面,需要部署在服务器
```
## 具体实现
* 通过harmonyShare.on('gesturesShare')方法注册隔空传送监听事件,并在回调中使用sharableTarget.share()方法分享文件或者分享App Linking链接,从而实现让用户通过“一抓一放”实现跨端传输。
* 通过App Linking实现应用拉起功能。
## 相关权限
**不涉及**
### 约束与限制
1. 本示例仅支持标准系统上运行,支持设备:华为手机、华为平板、PC/2in1。
2. HarmonyOS系统:HarmonyOS 6.0.0 Beta5及以上。
3. DevEco Studio版本:DevEco Studio 6.0.0 Beta5及以上。
4. HarmonyOS SDK版本:HarmonyOS 6.0.0 Beta5 SDK及以上。