# @capawesome-team/capacitor-file-opener 中文文档

规范地址：https://npmcn.com/package/%40capawesome-team/capacitor-file-opener/

版本：8\.1\.1
npm 元数据更新时间：2026-10-28T15:35:39.055Z
中文译文更新时间：2026-11-09T02:27:13.130Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40capawesome-team/capacitor-file-opener
原文对照：https://npmcn.com/package/%40capawesome-team/capacitor-file-opener/?lang=original
项目主页：https://capawesome.io/docs/sdks/capacitor/file-opener/
源码仓库：https://github.com/capawesome-team/capacitor-plugins

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

- 包体积（解压后）：47.6 kB，28 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：0 个
- peer 依赖：@capacitor/core \>=8\.0\.0
- 首次发布：2022-12-09T21:03:29.205Z
- 最新版本发布：2026-10-28T15:35:38.339Z
- 近 30 天下载量：122478（2026-10-09 至 2026-11-07，npm 官方下载统计）
- 已发布版本数：20（近 12 个月 9 个）

## 中文简介

在Android,iOS,和Web上打开带有默认应用程序的文件的Capacitor插件.

## 安装

```sh
npm install @capawesome-team/capacitor-file-opener
```

也可以使用：`pnpm add @capawesome-team/capacitor-file-opener`、`yarn add @capawesome-team/capacitor-file-opener`、`bun add @capawesome-team/capacitor-file-opener`

## README

# 电容文件打开器插件

用默认应用程序打开文件的电容插件 .

[![Try Capawesome Cloud free for 14 days — iOS builds without a Mac](https://capawesome.io/assets/banners/cloud-free-trial-capacitor-apps.png)](https://capawesome.io/)

## 特征

Capacitor File Opener插件是Capacitor apps最完整的文件打开解决方案之一. 以下是一些关键特征:

-   🖥️ **跨平台**:支持Android,iOS,和Web.
-   📄 **多文件格式**: 打开各种带有默认应用程序的文件类型.
-   🌐 **网络支持**:在Web平台上使用 Blob 对象打开文件.
-   📱 **土著融合**: 移动平台上使用系统文件关联.
-   📁 **灵活路径**: 支持Android上的文件路径和内容URI.
-   🔍 **MIME 类型检测**:自动MIME类型检测或手动规格.
-   🚨 **错误代码**:提供详细的出错代码,以更好地处理出错.
-   🤝 **兼容性**: 与 [文件压缩器](https://capawesome.io/docs/sdks/capacitor/file-compressor/), (中文(简体) ), [文件拾取器](https://capawesome.io/docs/sdks/capacitor/file-picker/) 财务报告和审定财务报表 [打印机](https://capawesome.io/docs/sdks/capacitor/printer/) 插件 .
-   🔁 **最新数据**:总是支持最新的Capacitor版本.

缺少一个功能? 刚刚 [打开一个问题](https://github.com/capawesome-team/capacitor-plugins/issues) 我们看看!

## 使用大小写

文件打开器插件通常在应用程序将文件交给另一个应用程序时使用,例如:

-   **文件查看**:打开下载的文档,如PDF,发票,或带有设备默认取景器应用的报告.
-   **下载后处理**: 让用户在您的应用程序下载或生成后立即打开文件 .
-   **媒体播放**: 打开用户与该类文件相关的应用的图像,视频,或音频文件.
-   **网络下载**: 打开文件 `Blob` 对象不首先保存.

## 兼容性

| 插件版本 | 电容版本 | 状态 |
| --- | --- | --- |
| 8.x.x (英语) | \>=8.x.x | 积极支持 |
| 7.x.x (中文(简体) ) | 7.x.x (中文(简体) ) | 折旧 |
| 6.x.x (中文(简体) ) | 6.x.x (中文(简体) ) | 折旧 |
| 5.x.x (中文(简体) ) | 5.x.x (中文(简体) ) | 折旧 |

## 演示

这里有一个实例: [robingenz/电容器-插管-demo](https://github.com/robingenz/capacitor-plugin-demo)

| 机器人 | iOS系统 |
| --- | --- |
| ![Android Demo](https://user-images.githubusercontent.com/13857929/185747140-7e59ca70-96c9-4d67-a3b3-8fd9c7eb1546.gif) | ![iOS Demo](https://user-images.githubusercontent.com/13857929/185747133-62a2b5e5-ff6f-4b30-871c-4c3609db7829.gif) |

## 指南

-   [如何在电容App中取用并编辑相片](https://capawesome.io/blog/how-to-take-and-edit-photos-in-a-capacitor-app/)

## 安装

你可以用我们的 **AI 辅助设置** 以安装插件. 添加数据 [超级技能](https://github.com/capawesome-team/skills) 至您的 AI 工具,使用以下命令:

```bash
npx skills add capawesome-team/skills --skill capacitor-plugins
```

然后使用下列提示:

```
Use the `capacitor-plugins` skill from `capawesome-team/skills` to install the `@capawesome-team/capacitor-file-opener` plugin in my project.
```

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

```bash
npm install @capawesome-team/capacitor-file-opener
npx cap sync
```

### 机器人

您需要指定包含要打开的文件的目录 。 要做到这一点,请创建名为新文件 `file_paths.xml` 输入 `res/xml` 您的Android项目目录( 例如 ). `android/app/src/main/res/xml/file_paths.xml`) (中文(简体) ). 以下是文件内容的例子:

```xml
<?xml version="1.0" encoding="utf-8"?>
<paths xmlns:android="http://schemas.android.com/apk/res/android">
    <files-path name="files" path="." />
    <cache-path name="cache" path="." />
    <external-files-path name="external-files" path="." />
    <external-cache-path name="external-cache" path="." />
    <external-path name="external" path="." />
</paths>
```

更多信息可在 [Android 文档](https://developer.android.com/training/secure-file-sharing/setup-sharing#DefineMetaData)。 。 。 .

#### 变量

如果需要, 您可以在您的应用程序中定义以下工程变量 `variables.gradle` 要更改依赖的默认版本的文件 :

-   `$androidxDocumentFileVersion` 版本 `androidx.documentfile:documentfile` (默认 : `1.1.0`(中文(简体) )

如果您在工程中遇到其它插件的依赖性冲突, 这会有所帮助 .

## 配置

此插件不需要配置 .

## 使用量

以下示例显示如何打开带有默认应用程序的文件.

### 打开带有默认应用程序的文件

在Android和iOS上,通过文件的路径. 在Android上,文件路径和内容URI都得到了支持. MIME 类型是自动确定的,但您也可以用 `mimeType` 选项。 在网络上,通过一个 `Blob` 实例代替:

```typescript
import { ErrorCode, FileOpener } from '@capawesome-team/capacitor-file-opener';

const open = async () => {
  try {
    await FileOpener.openFile({
      path: 'content://com.android.providers.downloads.documents/document/msf%3A1000000073',
    });
  } catch (error) {
    if (error.code === ErrorCode.FileAlreadyOpen) {
      // On iOS, a file is already open or still being opened.
    } else {
      // Handle other errors.
    }
  }
};
```

## API 密码

-   [`openFile(...)`](https://npmcn.com/package/%40capawesome-team/capacitor-file-opener/#readme-openfile)
-   [接口](https://npmcn.com/package/%40capawesome-team/capacitor-file-opener/#readme-interfaces)

### 打开文件(...)

```typescript
openFile(options: OpenFileOptions) => Promise<void>
```

打开带有默认应用程序的文件 .

| 参数 | 类型 |
| --- | --- |
| **`options`** | `[OpenFileOptions](https://npmcn.com/package/%40capawesome-team/capacitor-file-opener/#readme-openfileoptions)` |

**自:** 0.0.1 资源

* * *

### 接口

#### 打开文件选项

| Prop | 类型 | 说明 | 自兹 |
| --- | --- | --- | --- |
| **`blob`** | `Blob` | 要打开的文件的 blob 实例 。 仅在Web上提供. | 6.1.0 (中文(简体) ) |
| **`path`** | `string` | 文件路径. 仅在Android和iOS上提供. | 0.0.1 资源 |
| **`mimeType`** | `string` | 文件的MIME类型. 如果未指定, 将确定 MIME 类型 。 仅在Android和iOS上提供. | 0.0.1 资源 |

## 财务问题

### 此插件可打开哪些文件类型 ?

插件可以打开各种带有默认应用程序的文件类型. 在Android和iOS上,它使用系统文件关联,因此任何用户已安装了合适应用程序的文件类型都可以被打开. MIME 类型是自动确定的,但您也可以与 `mimeType` 选项.

### 为什么不能打开Android上的文件?

确保包含文件的目录在 `file_paths.xml` android 工程的文档,如 [安装](https://npmcn.com/package/%40capawesome-team/capacitor-file-opener/#readme-installation) 节。 没有这个配置,文件无法与应该打开它的应用程序共享.

### 我怎么在网络上打开文件?

在网络上,通过 `Blob` 实例 `openFile(...)` 方法 `blob` 选项。 这个 `path` 财务报告和审定财务报表 `mimeType` 选项仅在Android和iOS上可用.

### 我是否需要指定文件的 MIME 类型 ?

没有,如果 `mimeType` 未指定选项,将自动确定 MIME 类型。 您只需要设置它, 如果您想要覆盖检测到的类型 。 此选项仅在Android和iOS上可用.

### 此插件与文件拾取器插件有何不同 ?

这个 [文件拾取器](https://capawesome.io/docs/sdks/capacitor/file-picker/) 插件让用户从设备中选择一个文件并返回其路径和元数据. 文件打开器插件则相反:它需要您应用程序已经拥有的文件,并用默认应用程序打开它. 这两个插件合作得很好,比如选择一个文件然后打开.

### 我能用这个插件吗? 有Ionic、React、Vue或Angular?

是的,插件是框架不可知的。 它在任意网络框架的Capacitor app中工作,包括有Angular,React,或Vue的Ionic,以及平版JavaScript等项目.

## 相关插件

-   [文件压缩器](https://capawesome.io/docs/sdks/capacitor/file-compressor/): 压缩文件,支持PNG,JPEG,和WebP等图像格式.
-   [文件拾取器](https://capawesome.io/docs/sdks/capacitor/file-picker/):让用户从设备中选择文件,目录,图像,或视频.
-   [打印机](https://capawesome.io/docs/sdks/capacitor/printer/):打印文件,HTML,PDF,和关于Android和iOS的网页视图.
-   [共享目标](https://capawesome.io/docs/sdks/capacitor/share-target/):接收其他应用程序共享的文本,链接和文件.

## 通讯

随时更新有关卡帕韦索姆、Capacitor和Ionic生态系统的最新消息和最新消息,因为我们 [《卡帕索克通讯》](https://cloud.capawesome.io/newsletter/)。 。 。 .

## 更改日志

见 [变动情况](https://github.com/capawesome-team/capacitor-plugins/blob/main/packages/file-opener/CHANGELOG.md)。 。 。 .

## 许可证

见 [自由主义](https://github.com/capawesome-team/capacitor-plugins/blob/main/packages/file-opener/LICENSE)。 。 。 .

## 常见问题

### @capawesome-team/capacitor-file-opener 是什么？

在Android,iOS,和Web上打开带有默认应用程序的文件的Capacitor插件\.

### 如何安装 @capawesome-team/capacitor-file-opener？

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

### @capawesome-team/capacitor-file-opener 支持 TypeScript 吗？

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

### @capawesome-team/capacitor-file-opener 支持 ESM 还是 CommonJS？

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

### @capawesome-team/capacitor-file-opener 可以商用吗？

@capawesome-team/capacitor-file-opener 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @capawesome-team/capacitor-file-opener 的下载量有多少？

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

### @capawesome-team/capacitor-file-opener 还在维护吗？

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

