跳转到正文

@capgo/capacitor-uploader

Capacitor Uploader 插件,支持后台上传并可实时追踪进度。

@capgo/capacitor-uploader 通过以下方式将大文件移出设备 原生后台上传 支持 iOS 和 Android。进度和完成状态通过插件事件推送,因此即使 UI 已脱离当前页面,上传仍能继续。配合相机采集或文件系统路径使用,无需在 WebView 中缓冲整个文件。

常见场景:照片或视频备份、S3 预签名上传、带元数据字段的分段表单提交,以及通过以下方式实现的可靠重试: maxRetries.

平台后台上传备注
iOS是后台 URLSession
Android是上传时显示前台服务风格的通知
Web 端页面打开时fetch 基于此,不支持原生后台持续运行

Web 端也支持 IndexedDB 风格的路径: idb://[database]/[collection]/[key].

  • startUpload - 开始向服务器上传文件。
  • removeUpload - 取消并移除正在进行的上传。
方法描述
startUpload开始向服务器上传文件。
removeUpload取消并移除正在进行的上传。
addListener监听上传进度和状态事件。
getPluginVersion获取原生 Capacitor 插件版本。

此参考文档同步自 src/definitions.ts 中的 capacitor-uploader.

继续探索 @capgo/capacitor-uploader

“从 @capgo/capacitor-uploader 继续”章节

如果你正在使用 @capgo/capacitor-uploader 要规划存储和文件处理,请将其与 使用 @capgo/capacitor-uploader 用于在使用 @capgo/capacitor-uploader 时的原生能力 @capgo/capacitor-data-storage-sqlite 关于 @capgo/capacitor-data-storage-sqlite 中的实现细节, 使用 @capgo/capacitor-data-storage-sqlite 关于使用 @capgo/capacitor-data-storage-sqlite 的原生能力, @capgo/capacitor-file 实现细节请参阅 @capgo/capacitor-file,以及 使用 @capgo/capacitor-file 在 @capgo/capacitor-file. 中使用原生能力