电容文件打开器插件
用默认应用程序打开文件的电容插件 .
特征
Capacitor File Opener插件是Capacitor apps最完整的文件打开解决方案之一. 以下是一些关键特征:
- 🖥️ 跨平台:支持Android,iOS,和Web.
- 📄 多文件格式: 打开各种带有默认应用程序的文件类型.
- 🌐 网络支持:在Web平台上使用 Blob 对象打开文件.
- 📱 土著融合: 移动平台上使用系统文件关联.
- 📁 灵活路径: 支持Android上的文件路径和内容URI.
- 🔍 MIME 类型检测:自动MIME类型检测或手动规格.
- 🚨 错误代码:提供详细的出错代码,以更好地处理出错.
- 🤝 兼容性: 与 文件压缩器, (中文(简体) ), 文件拾取器 财务报告和审定财务报表 打印机 插件 .
- 🔁 最新数据:总是支持最新的Capacitor版本.
缺少一个功能? 刚刚 打开一个问题 我们看看!
使用大小写
文件打开器插件通常在应用程序将文件交给另一个应用程序时使用,例如:
- 文件查看:打开下载的文档,如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
| 机器人 | iOS系统 |
|---|---|
![]() | ![]() |
指南
安装
你可以用我们的 AI 辅助设置 以安装插件. 添加数据 超级技能 至您的 AI 工具,使用以下命令:
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.
如果你喜欢 手动设置,通过运行以下命令来安装插件,并遵循下面的平台特定指令:
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 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 文档。 。 。 .
变量
如果需要, 您可以在您的应用程序中定义以下工程变量 variables.gradle 要更改依赖的默认版本的文件 :
$androidxDocumentFileVersion版本androidx.documentfile:documentfile(默认 :1.1.0(中文(简体) )
如果您在工程中遇到其它插件的依赖性冲突, 这会有所帮助 .
配置
此插件不需要配置 .
使用量
以下示例显示如何打开带有默认应用程序的文件.
打开带有默认应用程序的文件
在Android和iOS上,通过文件的路径. 在Android上,文件路径和内容URI都得到了支持. MIME 类型是自动确定的,但您也可以用 mimeType 选项。 在网络上,通过一个 Blob 实例代替:
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(options: OpenFileOptions) => Promise<void>
打开带有默认应用程序的文件 .
| 参数 | 类型 |
|---|---|
options | 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 工程的文档,如 安装 节。 没有这个配置,文件无法与应该打开它的应用程序共享.
我怎么在网络上打开文件?
在网络上,通过 Blob 实例 openFile(...) 方法 blob 选项。 这个 path 财务报告和审定财务报表 mimeType 选项仅在Android和iOS上可用.
我是否需要指定文件的 MIME 类型 ?
没有,如果 mimeType 未指定选项,将自动确定 MIME 类型。 您只需要设置它, 如果您想要覆盖检测到的类型 。 此选项仅在Android和iOS上可用.
此插件与文件拾取器插件有何不同 ?
这个 文件拾取器 插件让用户从设备中选择一个文件并返回其路径和元数据. 文件打开器插件则相反:它需要您应用程序已经拥有的文件,并用默认应用程序打开它. 这两个插件合作得很好,比如选择一个文件然后打开.
我能用这个插件吗? 有Ionic、React、Vue或Angular?
是的,插件是框架不可知的。 它在任意网络框架的Capacitor app中工作,包括有Angular,React,或Vue的Ionic,以及平版JavaScript等项目.
相关插件
- 文件压缩器: 压缩文件,支持PNG,JPEG,和WebP等图像格式.
- 文件拾取器:让用户从设备中选择文件,目录,图像,或视频.
- 打印机:打印文件,HTML,PDF,和关于Android和iOS的网页视图.
- 共享目标:接收其他应用程序共享的文本,链接和文件.
通讯
随时更新有关卡帕韦索姆、Capacitor和Ionic生态系统的最新消息和最新消息,因为我们 《卡帕索克通讯》。 。 。 .
更改日志
见 变动情况。 。 。 .
许可证
见 自由主义。 。 。 .

