@capgo/capacitor-file-sharer

中文文档
8.1.16发布于 2026/10/15MPL-2.0TypeScriptESM + CJS零依赖构建来源已验证近 30 天下载 4.6万

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

中文使用文档
文档目录18 节
  1. *免费开始*
  2. 主要特点
  3. 兼容性
  4. 安装
  5. 使用量
  6. 综合说明
  7. 机器人
  8. iOS系统
  9. 网页
  10. 错误代码
  11. API 密码
  12. 共享(...)
  13. 保存(...)
  14. 获取 PluginVersion ()
  15. 接口
  16. 类型异名
  17. 捐款
  18. 许可证

@ capgo/ 容器- file- sharer

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

Capgo - Build Capacitor apps with AI, ship updates instantly

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

*免费开始*

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

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

@capgo/capacitor-file-sharer for Capacitor apps

主要特点

  • 份额数字 : 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 工具 :

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

然后使用下列提示:

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

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

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

使用量

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 共享 :

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

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

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(options: ShareFileOptions) => Promise<void>

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

参数类型
optionsShareFileOptions

保存(...)

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

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

参数类型
optionsShareFileOptions

回返情况: Promise<SaveFileResult>


获取 PluginVersion ()

getPluginVersion() => Promise<PluginVersionResult>

返回平台执行版本标记 .

回返情况: Promise<PluginVersionResult>


接口

共享文件选项

用于共享文件的选项 .

Prop类型说明
filenamestring提交接收应用程序的文件名 。 包括扩展名.
base64DatastringBase64编码了文件数据. 数据 URL 前缀被接受.
pathstring本地文件路径, 文件:// URL, 内容:// URL, 或 Capacitor 电容器 文件 URL (中文(简体) ).
contentTypestring文件的MIME类型. 省略时默认应用/ octet- 流 .
textstring可选文本或标题与文件共享 .
titlestring共享工作表或共享项目的可选标题 .
subjectstring邮件和相容共享目标使用的可选主题 .
androidAndroidFileSharerOptionsAndroid专用选项.

Android 文件共享选项

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

Prop类型说明
chooserTitlestring在 Android 选择器上方显示标题 .
saveDirectoryAndroidSaveDirectory保存所用的公共收藏 (). 内容的默认 Type .
relativePathstringAndroid 10+上选定公开收藏的可选相对文件夹.

保存文件结果

保存返回结果 () .

Prop类型说明
uristring当平台提供一个时保存文件的原生URI.

插件变压器

插件版本有效载荷 .

Prop类型说明
versionstring版本标识符由平台执行返回.

类型异名

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

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

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

保存文件选项

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

ShareFileOptions

捐款

见 捐款额。 。 。 .

许可证

MPL - 2.0 导弹

版本与发布记录

@capgo/capacitor-file-sharer 共发布 17 个版本,首次发布于 2026/05/06;过去 12 个月发布了 17 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
8.1.16latest2026/10/1525 天前
8.1.152026/10/1327 天前
8.1.142026/10/091 个月前
8.1.132026/10/091 个月前
8.1.112026/10/081 个月前
8.1.122026/10/081 个月前

关于 @capgo/capacitor-file-sharer 的常见问题

@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 和提交记录判断。