{"_id":"@capacitor-ohos/share","_rev":"2-f9d281d4f2e818acbfa1dc39e03c6ba1","name":"@capacitor-ohos/share","dist-tags":{"latest":"8.0.2"},"versions":{"8.0.1":{"name":"@capacitor-ohos/share","version":"8.0.1","keywords":["capacitor","plugin","native"],"author":{"url":"Group","name":"Huawei Device Co., Ltd and iSoftStone Information Technology"},"license":"MIT","_id":"@capacitor-ohos/share@8.0.1","maintainers":[{"name":"luqi_tan","email":"295099422@qq.com"}],"bugs":{"url":"https://gitcode.com/CPF-Ionic/capacitor-share/issues"},"dist":{"shasum":"3604cfb096cf0c0e8aee97e4aefe57e907619935","tarball":"https://registry.npmjs.org/@capacitor-ohos/share/-/share-8.0.1.tgz","fileCount":10,"integrity":"sha512-KNH5hUHIDSZqQGD+BIw0hKNqvb58dWbHJm5pCTPPY6Nk/nRP4JdQTS1Xd2crc7D7zULvfsKkS+3U/tnk7RzmlA==","signatures":[{"sig":"MEUCIEXH2ljWDQ1JETn+3FMp6K39jhPcRjOqesQiMcnZakIxAiEA4K8maKYCm2t5ErWk9VTkcyDlbUg4/t5NisXT3oVdbew=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":34847},"gitHead":"d859a86538122dce01eb9407a36a31d8df40d44d","_npmUser":{"name":"luqi_tan","email":"295099422@qq.com"},"capacitor":{"id":"@capacitor/share","platforms":["openharmony"]},"repository":{"url":"gitcode.com/CPF-Ionic/capacitor-share","type":"git"},"_npmVersion":"10.5.1","description":"The Share API provides methods for sharing content in any sharing-enabled apps the user may have installed.","directories":{},"_nodeVersion":"22.0.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/share_8.0.1_1777542683576_0.8489105428918418","host":"s3://npm-registry-packages-npm-production"}},"8.0.2":{"name":"@capacitor-ohos/share","version":"8.0.2","description":"The Share API provides methods for sharing content in any sharing-enabled apps the user may have installed.","capacitor":{"id":"@capacitor/share","platforms":["openharmony"]},"repository":{"type":"git","url":"gitcode.com/CPF-Ionic/capacitor-share"},"bugs":{"url":"https://gitcode.com/CPF-Ionic/capacitor-share/issues"},"keywords":["capacitor","plugin","native"],"author":{"name":"Huawei Device Co., Ltd and iSoftStone Information Technology","url":"Group"},"license":"MIT","_id":"@capacitor-ohos/share@8.0.2","gitHead":"30892024ae38e33975fbf39d945e1c9094edd96e","_nodeVersion":"22.0.0","_npmVersion":"10.5.1","dist":{"integrity":"sha512-8/GPuFxViIprI1EpdY5Dt5IaQqAThBHZyhtEI3VeTmqe2St3dIQKBqKgtFLVkmrODkAylpE5ylja+5hynKjwqg==","shasum":"2041e81fb7db185654c8876d26214b573be41d6e","tarball":"https://registry.npmjs.org/@capacitor-ohos/share/-/share-8.0.2.tgz","fileCount":10,"unpackedSize":34871,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDQkLwUDZFKqP1mAh/inEj0s3byp+PoOg6GrmLO6RgX/wIgUHkd9P6DZuDR2RddA0FpwlpH4hw589D6feUG6uHLtGI="}]},"_npmUser":{"name":"luqi_tan","email":"295099422@qq.com"},"directories":{},"maintainers":[{"name":"luqi_tan","email":"295099422@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/share_8.0.2_1784792906163_0.39118764829191766"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-30T09:51:23.419Z","modified":"2026-07-23T07:48:26.480Z","8.0.1":"2026-04-30T09:51:23.738Z","8.0.2":"2026-07-23T07:48:26.294Z"},"bugs":{"url":"https://gitcode.com/CPF-Ionic/capacitor-share/issues"},"author":{"name":"Huawei Device Co., Ltd and iSoftStone Information Technology","url":"Group"},"license":"MIT","keywords":["capacitor","plugin","native"],"repository":{"type":"git","url":"gitcode.com/CPF-Ionic/capacitor-share"},"description":"The Share API provides methods for sharing content in any sharing-enabled apps the user may have installed.","maintainers":[{"name":"luqi_tan","email":"295099422@qq.com"}],"readme":"# <center>@capacitor/share</center>\r\n[![zh-CN](https://img.shields.io/badge/lang-中文-blue.svg)](README.md)\r\n[![en](https://img.shields.io/badge/lang-English-blue.svg)](README.en.md)\r\n\r\n本项目基于 [@capacitor/share@8.0.0](https://www.npmjs.com/package/@capacitor/share) 开发。\r\n\r\n## 简介\r\n\r\n`@capacitor/share` 是 capacitor 生态系统中的核心插件，为跨平台应用开发提供设备差异化适配能力，兼容 capacitor 的 Android、iOS 等主流移动平台及浏览器环境，本文档主要说明在 OpenHarmony 系统中的使用。\r\n\r\n该插件提供了调用系统分享面板分享内容的能力，支持分享文本、URL、图片和其它文件，满足移动应用中内容分享的常见场景需求。\r\n\r\n## 支持平台\r\n\r\n- **OpenHarmony**：5.0+\r\n\r\n## 下载安装\r\n\r\n通过命令行或手动引入即可快速安装插件，支持从npm仓库获取。\r\n\r\n### 命令行安装（推荐）\r\n\r\n安装hionic CLI：\r\n\r\n```bash\r\nnpm install -g hionic\r\n```\r\n\r\n以下两种方式中**任选其一**即可，无需重复操作：\r\n\r\nnpm安装：\r\n\r\n```bash\r\n# 安装插件\r\nnpm install @capacitor/share\r\n\r\n# 同步插件\r\nhionic sync openharmony\r\n```\r\n\r\nhionic CLI安装：\r\n\r\n```bash\r\nhionic plugin add @capacitor/share\r\n```\r\n\r\n### 手动引入安装\r\n\r\n根据插件源码中 `plugin.xml` 配置在项目中引入插件：\r\n\r\n#### 1. 添加插件配置\r\n\r\n根据 `plugin.xml` 的 `config-json` 项，通过 `target` 字段找到 `entry` 模块中 `capacitor.plugins.json` 文件，并根据 `param` 标签添加配置如下：\r\n\r\n```json\r\n{\r\n    \"pkg\": \"@capacitor/share\",\r\n    \"classpath\": \"Share\"\r\n}\r\n```\r\n\r\n#### 2. 修改 CMake 配置\r\n\r\n根据 `plugin.xml` 的 `CMakeLists` 项，通过 `modules-name` 字段找到模块 capacitor，路径为 `target` 字段的 `CMakeLists.txt` 文件，并根据 `param` 标签添加 `add_subdirectory` 和 `target_link_libraries` 如下：\r\n\r\n```cmake\r\n#START_ADD_SUBDIRECTORY\r\n// ...\r\nadd_subdirectory(Share)\r\n// ...\r\n#END_ADD_SUBDIRECTORY\r\n\r\n// ...\r\n\r\ntarget_link_libraries(capacitor PUBLIC\r\n  \"-Wl,--whole-archive\"\r\n  // ...\r\n  Share\r\n  // ...\r\n  \"-Wl,--no-whole-archive\"\r\n)\r\n```\r\n\r\n#### 3. 复制源码文件\r\n\r\n根据 `plugin.xml` 的 `source-file` 项，根据 `src` 字段找到需要复制的文件，并根据 `modules-name` 字段和 `target-dir` 字段找到文件复制的具体模块和目录：\r\n\r\n将源码中 src/main/cpp/Share 目录下的 Share.h、Share.cpp、CMakeLists.txt 文件引入到 capacitor 模块中 src/main/cpp/Share 目录下。\r\n\r\n将源码中 src/main/ets/components/Share 目录下的 ShareAction.ets 文件引入到 capacitor 模块中 src/main/ets/components/Share 目录下。\r\n\r\n#### 4. 添加 ArkTS 配置\r\n\r\n在 capacitor 模块的 `build-profile.json5` 文件中，`buildOption/arkOptions/runtimeOnly/sources` 配置项数组中加入步骤 3 中拷贝的 ets 文件路径：\r\n\r\n```json\r\n\"buildOption\":{\r\n  // ...\r\n  \"arkOptions\": {\r\n    \"runtimeOnly\": {\r\n      \"sources\": [\r\n        // ...\r\n        \"./src/main/ets/components/Share/ShareAction.ets\"\r\n        // ...\r\n      ]\r\n    }\r\n  }\r\n}\r\n```\r\n\r\n## 卸载\r\n\r\n```bash\r\n# 卸载 share 插件\r\nhionic plugin remove @capacitor/share\r\n```\r\n\r\n## 约束与限制\r\n\r\n### 兼容性\r\n\r\n在以下版本中已测试通过：\r\n\r\n1. SDK: 5.0.5(17); IDE: DevEco Studio: 6.0.0; ROM: 5.1.0.150;\r\n\r\n### 权限要求\r\n\r\n依赖系统分享功能，无需额外权限。\r\n\r\n## 使用示例\r\n\r\n### 基础示例：分享内容\r\n\r\n```javascript\r\nimport { Share } from '@capacitor/share';\r\n\r\n// 仅分享文本\r\nawait Share.share({\r\n  text: 'Really awesome thing you need to see right meow',\r\n});\r\n\r\n// 仅分享 URL\r\nawait Share.share({\r\n  url: 'http://ionicframework.com/',\r\n});\r\n\r\n// 分享文本和 URL\r\nawait Share.share({\r\n  title: 'Ionic Framework',\r\n  text: 'Really awesome thing you need to see right meow',\r\n  url: 'http://ionicframework.com/',\r\n});\r\n```\r\n\r\n## 使用说明\r\n\r\n### 接口方法\r\n\r\n| 方法名 | 返回类型 | 描述 | 备注 |\r\n| ---- | ---- | ---- | ---- |\r\n| canShare() | Promise&lt;[CanShareResult](#canshareresult)&gt; | 检查是否支持分享 | |\r\n| share(options: [ShareOptions](#shareoptions)) | Promise&lt;[ShareResult](#shareresult)&gt; | 显示分享面板，分享内容 | API 18 及以上版本支持返回用户选择的应用标识符 |\r\n\r\n### 数据结构\r\n\r\n#### CanShareResult\r\n\r\n调用 `canShare` 方法时的返回对象\r\n\r\n| 属性         | 类型     | 描述                                                  |\r\n| ------------ | -------- | ------------------------------------------------------------ |\r\n| **`value`** | `boolean` | 是否支持分享 |\r\n\r\n#### ShareOptions\r\n\r\n调用 `share` 方法时的参数对象\r\n\r\n| 属性        | 类型     | 描述         |\r\n| ----------- | -------- | ------------------- |\r\n| **`title`** | `string` | 为任何消息设置一个标题。如果通过电子邮件分享，这将成为邮件的主题。   |\r\n| **`text`**  | `string` | 设置一些要分享的文本。 |\r\n| **`url`**  | `string` | 设置一个要分享的 URL，可以是 http、https 或 file:// URL。 |\r\n| **`files`**  | `string[]` | 待分享文件的 `file://` URL 数组。 |\r\n| **`dialogTitle`**  | `string` | 为分享面板设置标题。 |\r\n\r\n#### ShareResult\r\n\r\n调用 `share` 方法时的返回对象\r\n\r\n| 属性         | 类型     | 描述                                                  |\r\n| ------------ | -------- | ------------------------------------------------------------ |\r\n| **`activityType`** | `string` | 接收分享操作的应用程序的标识符。 API 18+ 支持        |\r\n\r\n## 其它\r\n\r\n本插件依赖设备的系统分享功能，分享能力取决于设备上已安装的应用。\r\n\r\n## 目录结构\r\n\r\n```\r\n|---- 项目根目录\r\n|     |---- src\r\n|           |---- main\r\n|                 |---- cpp\r\n|                       |---- Share   # 插件核心 C++ 实现\r\n|                             |---- Share.cpp\r\n|                             |---- Share.h\r\n|                             |---- CMakeLists.txt\r\n|                 |---- ets\r\n|                       |---- components\r\n|                             |---- Share   # ArkTS 组件实现\r\n|                                   |---- ShareAction.ets\r\n|     |---- README.md              # 说明文档\r\n|     |---- package.json           # npm 配置文件\r\n|     |---- plugin.xml             # capacitor 插件配置\r\n|     |---- LICENSE                # 许可证文件\r\n```\r\n\r\n## 贡献代码\r\n\r\n使用过程中发现任何问题都可以提 [Issue](https://gitcode.com/CPF-Ionic/capacitor-share/issues)，当然，也非常欢迎发 [PR](https://gitcode.com/CPF-Ionic/capacitor-share/pulls) 共建。\r\n\r\n## 许可证\r\n\r\n本插件基于 **MIT License** 开源，详见 [LICENSE](./LICENSE) 文件。\r\n","readmeFilename":"README.md"}