# @capgo/capacitor-file-sharer 中文文档

规范地址：https://npmcn.com/package/%40capgo/capacitor-file-sharer/

版本：8\.1\.16
npm 元数据更新时间：2026-10-15T06:45:48.115Z
中文译文更新时间：2026-11-09T03:35:23.068Z
软件包许可：MPL-2\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40capgo/capacitor-file-sharer
原文对照：https://npmcn.com/package/%40capgo/capacitor-file-sharer/?lang=original
项目主页：https://capgo.app/docs/plugins/file-sharer/
源码仓库：https://github.com/Cap-go/capacitor-file-sharer

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：111 kB，29 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：0 个
- peer 依赖：@capacitor/core \>=8\.0\.0
- 首次发布：2026-05-06T07:14:15.829Z
- 最新版本发布：2026-10-15T06:45:47.571Z
- 近 30 天下载量：45652（2026-10-09 至 2026-11-07，npm 官方下载统计）
- 已发布版本数：17（近 12 个月 17 个）

## 中文简介

在Android,iOS,和Web上共享并保存文件的电容插件.

## 安装

```sh
npm install @capgo/capacitor-file-sharer
```

也可以使用：`pnpm add @capgo/capacitor-file-sharer`、`yarn add @capgo/capacitor-file-sharer`、`bun add @capgo/capacitor-file-sharer`

## README

# @ capgo/ 容器- file- sharer

通过您的 Capacitor app 的本地共享表共享文件, 或者保存到 Android 上的设备中 。 在网络上,相同的通话下载文件.

[![Capgo - Build Capacitor apps with AI, ship updates instantly](https://capgo.app/readme-banner.svg?repo=Cap-go/capacitor-file-sharer)](https://capgo.app/?ref=plugin_file_sharer)

**队长**:在几分钟内将修正推给您的 Capacitor 用户,在没有Mac的情况下构建已签名的iOS和Android apps,并在一击中回滚.

## [\*免费开始\*](https://capgo.app/register/?ref=plugin_file_sharer)

14天无限自由审判. 不需要信用卡

> 🤖 **建筑与AI编码代理?** 安装 [Capgo 技能](https://capgo.app/skills/?ref=plugin_file_sharer) 所以克劳德代码,代码,光标,副驾驶,或双子座CLI知道如何安装和使用 `@capgo/capacitor-file-sharer` 在您的电容应用程序中: `npx skills add Cap-go/capgo-skills`。然后问你的经纪人: _加入@capgo/capor-file-sharrer到我的Capacitor应用上并把它接上_ [代理设置指南](https://capgo.app/agents/?ref=plugin_file_sharer) • 妇女 [主机磁共振](https://capgo.app/docs/ai/mcp/?ref=plugin_file_sharer)

![@capgo/capacitor-file-sharer for Capacitor apps](https://raw.githubusercontent.com/Cap-go/capacitor-file-sharer/main/assets/github-social-preview.png)

## 主要特点

-   **份额**数字 : `share()` 在iOS和Android上打开本地共享表.
-   **保存**:在Android上,(在Android上,在Android上,在Android上,在Android上,在Android上,在Android上,在Android上, `save()` 将文件存储在支持的 MediaStore 中,并保存旧版本的遗留路径。 在iOS上,它打开了共享工作表,让用户选择目的地.
-   **灵活输入**:通过基础64数据或本地文件.
-   **网络倒置**:两种方法都下载浏览器中的文件.
-   **平台**: iOS,Android和Web. 互联网档案馆的存檔,存档日期2013-12-02.

## 兼容性

| 插件版本 | 电容兼容性 | 维护 |
| --- | --- | --- |
| v八._。 。 。 ._ | v八._。 。 。 ._ | 对 |
| v._。 。 。 ._ | v._。 。 。 ._ | 应要求 |
| v6 (英语)._。 。 。 ._ | v6 (英语)._。 。 。 ._ | 应要求 |

插件主版本遵循Capacitor主版本. 新工作目标先是8号控制器.

## 安装

您可以使用我们的 AI 辅助设置安装插件 。 使用以下命令将 Capgo 技能添加到您的 AI 工具 :

```bash
npx skills add https://github.com/cap-go/capacitor-skills --skill capacitor-plugins
```

然后使用下列提示:

```text
Use the `capacitor-plugins` skill from `cap-go/capacitor-skills` to install the `@capgo/capacitor-file-sharer` plugin in my project.
```

如果您更喜欢手动设置,请通过运行以下命令来安装插件,并遵循下面的平台特定指令:

```bash
bun add @capgo/capacitor-file-sharer
bunx cap sync
```

## 使用量

```typescript
import { FileSharer } from '@capgo/capacitor-file-sharer';

await FileSharer.share({
  filename: 'report.pdf',
  contentType: 'application/pdf',
  base64Data: reportBase64,
  title: 'Quarterly report',
  text: 'Attached report',
});
```

从本地文件路径或 Capacitor 文件 URL 共享 :

```typescript
await FileSharer.share({
  filename: 'movie.mp4',
  contentType: 'video/mp4',
  path: fileUri,
});
```

直接保存在Android上或在Web上下载 :

```typescript
const result = await FileSharer.save({
  filename: 'backup.zip',
  contentType: 'application/zip',
  base64Data: zipBase64,
  android: {
    saveDirectory: 'downloads',
    relativePath: 'Download/My App',
  },
});

console.log(result.uri);
```

## 综合说明

### 机器人

-   共享使用a `FileProvider`, (中文(简体) ), `ClipData`,而URI授予Android的选取者可以读取预览和缩略图.
-   `share()` 在Android选择器打开后解决。 这避免了在活动状态下保留大型基地64有效载荷.
-   `save()` 在Android 10+上向MediaStore写作,在较旧的Android版本上向对应的公共目录写作.
-   第9号及以下 `WRITE_EXTERNAL_STORAGE` 用于公共保存; 插件显示包含其中 `maxSdkVersion=28`。 。 。 .
-   Android 保存目录 : `downloads`, (中文(简体) ), `pictures`, (中文(简体) ), `movies`, (中文(简体) ), `music`,以及 `documents`。 。 。 .

### iOS系统

-   `share()` 支持 `base64Data` 和直接当地 `path` 共享.
-   `save()` 打开本地共享工作表,以便用户可以选择“保存到文件”或“其他目的地”.
-   Swift包管理器和CocoaPods都得到了支持.

### 网页

-   `share()` 财务报告和审定财务报表 `save()` 在浏览器中下载文件.
-   Base64转换被块来避免Chromium中的大阵列分配失败.

## 错误代码

-   `ERR_PARAM_NO_FILENAME`数字 : `filename` 缺少或空白.
-   `ERR_PARAM_NO_DATA`: 无 `base64Data` 也没有 `path` 已提供.
-   `ERR_PARAM_DATA_INVALID`: base64 输入无法解码 .
-   `ERR_LOCAL_FILE_NOT_FOUND`: 无法打开提供的本地路径或内容 URI .
-   `ERR_FILE_CACHING_FAILED`: 无法写入本地临时文件 .
-   `ERR_FILE_SAVE_FAILED`: Android 无法将文件保存到公共存储.
-   `ERR_ACTIVITY_NOT_FOUND`: Android 无法打开共享目标 .
-   `USER_CANCELLED`:iOS共享表未完成被解职.

## API 密码

-   [`share(...)`](https://npmcn.com/package/%40capgo/capacitor-file-sharer/#readme-share)
-   [`save(...)`](https://npmcn.com/package/%40capgo/capacitor-file-sharer/#readme-save)
-   [`getPluginVersion()`](https://npmcn.com/package/%40capgo/capacitor-file-sharer/#readme-getpluginversion)
-   [接口](https://npmcn.com/package/%40capgo/capacitor-file-sharer/#readme-interfaces)
-   [类型异名](https://npmcn.com/package/%40capgo/capacitor-file-sharer/#readme-type-aliases)

电容文件共享器插件.

### 共享(...)

```typescript
share(options: ShareFileOptions) => Promise<void>
```

使用Android和iOS上的本地共享页共享文件. 在网络上,这可以下载文件,因为浏览器不会暴露一个一致的本土文件共享目标.

| 参数 | 类型 |
| --- | --- |
| **`options`** | `[ShareFileOptions](https://npmcn.com/package/%40capgo/capacitor-file-sharer/#readme-sharefileoptions)` |

* * *

### 保存(...)

```typescript
save(options: SaveFileOptions) => Promise<SaveFileResult>
```

本地保存文件 . Android上这个写给MediaStore/Downloads。 在网络上下载文件 . 在 iOS 上,此打开共享工作表,以便用户选择保存到文件或其他目标 .

| 参数 | 类型 |
| --- | --- |
| **`options`** | `[ShareFileOptions](https://npmcn.com/package/%40capgo/capacitor-file-sharer/#readme-sharefileoptions)` |

**回返情况:** `Promise<[SaveFileResult](https://npmcn.com/package/%40capgo/capacitor-file-sharer/#readme-savefileresult)>`

* * *

### 获取 PluginVersion ()

```typescript
getPluginVersion() => Promise<PluginVersionResult>
```

返回平台执行版本标记 .

**回返情况:** `Promise<[PluginVersionResult](https://npmcn.com/package/%40capgo/capacitor-file-sharer/#readme-pluginversionresult)>`

* * *

### 接口

#### 共享文件选项

用于共享文件的选项 .

| Prop | 类型 | 说明 |
| --- | --- | --- |
| **`filename`** | `string` | 提交接收应用程序的文件名 。 包括扩展名. |
| **`base64Data`** | `string` | Base64编码了文件数据. 数据 URL 前缀被接受. |
| **`path`** | `string` | 本地文件路径, 文件:// URL, 内容:// URL, 或 Capacitor _电容器 文件_ URL (中文(简体) ). |
| **`contentType`** | `string` | 文件的MIME类型. 省略时默认应用/ octet- 流 . |
| **`text`** | `string` | 可选文本或标题与文件共享 . |
| **`title`** | `string` | 共享工作表或共享项目的可选标题 . |
| **`subject`** | `string` | 邮件和相容共享目标使用的可选主题 . |
| **`android`** | `[AndroidFileSharerOptions](https://npmcn.com/package/%40capgo/capacitor-file-sharer/#readme-androidfileshareroptions)` | Android专用选项. |

#### Android 文件共享选项

用于文件共享和保存的Android特定行为.

| Prop | 类型 | 说明 |
| --- | --- | --- |
| **`chooserTitle`** | `string` | 在 Android 选择器上方显示标题 . |
| **`saveDirectory`** | `[AndroidSaveDirectory](https://npmcn.com/package/%40capgo/capacitor-file-sharer/#readme-androidsavedirectory)` | 保存所用的公共收藏 (). 内容的默认 Type . |
| **`relativePath`** | `string` | Android 10+上选定公开收藏的可选相对文件夹. |

#### 保存文件结果

保存返回结果 () .

| Prop | 类型 | 说明 |
| --- | --- | --- |
| **`uri`** | `string` | 当平台提供一个时保存文件的原生URI. |

#### 插件变压器

插件版本有效载荷 .

| Prop | 类型 | 说明 |
| --- | --- | --- |
| **`version`** | `string` | 版本标识符由平台执行返回. |

### 类型异名

#### Android Save Directory (英语:Android Save Directory) (英语:Android save Directory) 机器人保护指南(英语:Android Save Directory) 机器人保护指南(英语:Android Save Directory)

保存所用的Android公共收藏 ().

`'downloads' | 'pictures' | 'movies' | 'music' | 'documents'`

#### 保存文件选项

用于本地保存文件的选项 .

`[ShareFileOptions](https://npmcn.com/package/%40capgo/capacitor-file-sharer/#readme-sharefileoptions)`

## 捐款

见 [捐款额](https://npmcn.com/package/%40capgo/capacitor-file-sharer/CONTRIBUTING.md)。 。 。 .

## 许可证

MPL - 2.0 导弹

## 常见问题

### @capgo/capacitor-file-sharer 是什么？

在Android,iOS,和Web上共享并保存文件的电容插件\.

### 如何安装 @capgo/capacitor-file-sharer？

在项目目录运行 npm install @capgo/capacitor-file-sharer，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：@capacitor/core（\>=8\.0\.0）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @capgo/capacitor-file-sharer 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @capgo/capacitor-file-sharer 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @capgo/capacitor-file-sharer 可以商用吗？

@capgo/capacitor-file-sharer 使用 MPL-2\.0 许可。弱 Copyleft：可以商用，也可以和闭源代码一起使用；但如果分发时修改了 MPL 授权的文件，这些文件的修改需以 MPL 开源。以上为概括，不构成法律意见，请以许可原文为准。

### @capgo/capacitor-file-sharer 的下载量有多少？

根据 npm 官方下载统计，@capgo/capacitor-file-sharer 在 2026/10/09 – 2026/11/07 这 30 天内被下载 45,652 次，日均约 1,522 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @capgo/capacitor-file-sharer 还在维护吗？

最新版本 8\.1\.16 发布于 2026/10/15（25 天前）；至今共发布 17 个版本，其中过去 12 个月发布了 17 个；首次发布于 2026/05/06。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

