# @capacitor-community/file-opener 中文文档

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

版本：8\.0\.1
npm 元数据更新时间：2026-10-23T21:47:53.085Z
中文译文更新时间：2026-11-09T01:52:59.756Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：38.7 kB，25 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- Node.js 要求：\>=16\.0\.0
- 运行依赖：0 个
- peer 依赖：@capacitor/core \>=8\.0\.0
- 首次发布：2022-08-23T04:29:51.581Z
- 最新版本发布：2026-05-29T14:21:44.725Z
- 近 30 天下载量：527188（2026-10-09 至 2026-11-07，npm 官方下载统计）
- 已发布版本数：13（近 12 个月 2 个）

## 中文简介

电容文件打开器. 插件可以在 mimeType 和文件 uri 中打开文件 .

## 安装

```sh
npm install @capacitor-community/file-opener
```

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

## README

  
![](https://user-images.githubusercontent.com/236501/85893648-1c92e880-b7a8-11ea-926d-95355b8175c7.png)

### 文件打开器

**`@capacitor-community/file-opener`**

电容文件打开器. 插件可以在 mimeType 和文件 uri 中打开文件 .

![](https://img.shields.io/maintenance/yes/2026?style=flat-square) [![](https://img.shields.io/npm/l/@capacitor-community/file-opener?style=flat-square)](https://www.npmjs.com/package/@capacitor-community/file-opener)  
[![](https://img.shields.io/npm/dw/@capacitor-community/file-opener?style=flat-square)](https://www.npmjs.com/package/@capacitor-community/file-opener) [![](https://img.shields.io/npm/v/@capacitor-community/file-opener?style=flat-square)](https://www.npmjs.com/package/@capacitor-community/file-opener) [![](https://img.shields.io/badge/all%20contributors-1-orange?style=flat-square)](https://npmcn.com/package/%40capacitor-community/file-opener/#readme-contributors-)

## 目录

-   [目录](https://npmcn.com/package/%40capacitor-community/file-opener/#readme-table-of-contents)
-   [维护者](https://npmcn.com/package/%40capacitor-community/file-opener/#readme-maintainers)
-   [关于](https://npmcn.com/package/%40capacitor-community/file-opener/#readme-about)
-   [插件版本](https://npmcn.com/package/%40capacitor-community/file-opener/#readme-plugin-versions)
-   [安装](https://npmcn.com/package/%40capacitor-community/file-opener/#readme-installation)
-   [使用量](https://npmcn.com/package/%40capacitor-community/file-opener/#readme-usage)
-   [API 密码](https://npmcn.com/package/%40capacitor-community/file-opener/#readme-api)
    -   [打开(...)](https://npmcn.com/package/%40capacitor-community/file-opener/#readme-open)
    -   [接口](https://npmcn.com/package/%40capacitor-community/file-opener/#readme-interfaces)
        -   [文件打开选项](https://npmcn.com/package/%40capacitor-community/file-opener/#readme-fileopeneroptions)
    -   [错误代码和含义列表](https://npmcn.com/package/%40capacitor-community/file-opener/#readme-list-of-error-codes-and-meanings)
    -   [机器人](https://npmcn.com/package/%40capacitor-community/file-opener/#readme-android)
    -   [iOS系统](https://npmcn.com/package/%40capacitor-community/file-opener/#readme-ios)

## 维护者

| 维护者 | GitHub 图像 | 活动 |
| --: | :-- | --- |
| 尼亚a | [尼亚a](https://github.com/ryaa) | 对 |

## 关于

这个插件类似于cordova-plugin-file-opener2,但没有安装支持.

## 插件版本

| 电容版本 | 插件版本 |
| --: | :-- |
| 8.x 电话 | 8.x 电话 |
| 7.x 电话 | 7.x 电话 |
| 6.x (单位:千美元) | 6.x (单位:千美元) |
| 5.x 电话 | 1.0.5 (简体中文) |
| 4.x (中文(简体) ) | 1.0.4 国家 |

## 安装

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

## 使用量

```typescript
import { FileOpener, FileOpenerOptions } from '@capacitor-community/file-opener';

try {
  const fileOpenerOptions: FileOpenerOptions = {
    filePath: 'file:///path/to/file',
    contentType: 'application/pdf',
    openWithDefault: true,
  };
  await FileOpener.open(fileOpenerOptions);
} catch (e) {
  console.log('Error opening file', e);
}
```

或者请看 **示例应用程序** 一个完整的例子.

## API 密码

-   [`open(...)`](https://npmcn.com/package/%40capacitor-community/file-opener/#readme-open)
-   [接口](https://npmcn.com/package/%40capacitor-community/file-opener/#readme-interfaces)

### 打开(...)

```typescript
open(options: FileOpenerOptions) => Promise<void>
```

打开文件的方法 .

| 参数 | 类型 |
| --: | :-- |
| **`options`** | `[FileOpenerOptions](https://npmcn.com/package/%40capacitor-community/file-opener/#readme-fileopeneroptions)` |

**自:** 1.0.0 (单位:千美元)

* * *

### 接口

#### 文件打开选项

文件打开方法选项

| Prop | 类型 | 说明 | 自兹 |
| --: | :-- | --- | --- |
| **`filePath`** | `string` | 文件路径 | 1.0.0 (单位:千美元) |
| **`contentType`** | `string` | MIME 类型( 可选) | 1.0.0 (单位:千美元) |
| **`openWithDefault`** | `boolean` | 使用默认的平台选择器, 如果是真实的, 否则: On Android: 它会显示“ Open File in..” 选择器对话框的标题, 即使用户选择了默认的, 如果找不到处理文件的活动, 系统仍然会显示一个带有指定标题和错误消息的对话框 。 在 iOS 上, 应用程序无法执行此动作 : 它会提供一个菜单, 限制在能够打开当前文档的应用程序列表中 。 这种确定是基于所安装的应用程序所支持的文档类型和文档类型. 要支持一个或多个文档类型,一个app必须使用 CFBundleDocumentTypes 键在其Info.plist文件中注册这些类型. (可选)默认值为真 | 1.0.0 (单位:千美元) |
| **`chooserPosition`** | `{ x: number; y: number; }` | (仅iOS;仅iPad) 将选择者(ShareSheet)菜单锁定在视图中的位置(可选) 请注意,这只有在应用程序运行于iPad和打开With Default为虚假时才适用,否则会被忽略 | 1.0.3 (中文(简体) ) |

### 错误代码和含义列表

当一个错误被抛出时,将使用以下代码之一(作为字符串值).

| 代码 | 说明 |
| --: | :-- |
| 一号 | `INTERNAL_ERROR` |
| 二号 | `INVALID_ARGUMENT` |
| 8号 | `FILE_NOT_SUPPORTED` |
| 9号 | `FILE_NOT_FOUND` |
| 10岁 | `UNKNOWN` |

### 机器人

如果您需要应用程序在外部目录中打开文件, 那么在您内部 `AndroidManifest.xml` 文件,修改如下:

```diff
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example">

+  <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

</manifest>
```

### iOS系统

您需要将 ios/ App/ Podfile 设置为 15 版本或更高版本( 详情请访问 [见](https://capacitorjs.com/docs/ios#ios-support)(中文(简体) )

```
platform :ios '15.0'
```

接下来 `npx cap sync ios`

## 常见问题

### @capacitor-community/file-opener 是什么？

电容文件打开器\. 插件可以在 mimeType 和文件 uri 中打开文件 \.

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

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

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

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

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

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

### @capacitor-community/file-opener 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=16\.0\.0。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

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

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

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

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

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

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

