@capacitor-community/file-opener

中文文档
8.0.1发布于 2026/05/29MITTypeScriptESM + CJS零依赖近 30 天下载 52.7万

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

中文使用文档
文档目录13 节
  1. 文件打开器
  2. 目录
  3. 维护者
  4. 关于
  5. 插件版本
  6. 安装
  7. 使用量
  8. API 密码
  9. 打开(...)
  10. 接口
  11. 错误代码和含义列表
  12. 机器人
  13. iOS系统


文件打开器

@capacitor-community/file-opener

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


目录

维护者

维护者GitHub 图像活动
尼亚a尼亚a对

关于

这个插件类似于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 国家

安装

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

使用量

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

打开文件的方法 .

参数类型
optionsFileOpenerOptions

自: 1.0.0 (单位:千美元)


接口

文件打开选项

文件打开方法选项

Prop类型说明自兹
filePathstring文件路径1.0.0 (单位:千美元)
contentTypestringMIME 类型( 可选)1.0.0 (单位:千美元)
openWithDefaultboolean使用默认的平台选择器, 如果是真实的, 否则: 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 文件,修改如下:

<?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 版本或更高版本( 详情请访问 见(中文(简体) )

platform :ios '15.0'

接下来 npx cap sync ios

版本与发布记录

@capacitor-community/file-opener 共发布 13 个版本,首次发布于 2022/08/23;过去 12 个月发布了 2 个版本。

版本发布日期距今
8.0.1latest2026/05/295 个月前
8.0.02025/12/2510 个月前
7.0.12025/03/041.7 年前
7.0.02025/01/271.8 年前
6.0.12024/09/042 年前
6.0.02024/04/222 年前

关于 @capacitor-community/file-opener 的常见问题

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