概览
“概览”章节@capgo/capacitor-uploader 通过以下方式将大文件移出设备 原生后台上传 支持 iOS 和 Android。进度和完成状态通过插件事件推送,因此即使 UI 已脱离当前页面,上传仍能继续。配合相机采集或文件系统路径使用,无需在 WebView 中缓冲整个文件。
常见场景:照片或视频备份、S3 预签名上传、带元数据字段的分段表单提交,以及通过以下方式实现的可靠重试: maxRetries.
平台支持
标题为“平台支持”的部分| 平台 | 后台上传 | 备注 |
|---|---|---|
| iOS | 是 | 后台 URLSession |
| Android | 是 | 上传时显示前台服务风格的通知 |
| Web 端 | 页面打开时 | fetch 基于此,不支持原生后台持续运行 |
Web 端也支持 IndexedDB 风格的路径: idb://[database]/[collection]/[key].
核心功能
标题为“核心功能”的章节startUpload- 开始向服务器上传文件。removeUpload- 取消并移除正在进行的上传。
公开 API
标题为“公开 API”的章节| 方法 | 描述 |
|---|---|
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. 中使用原生能力