问题标签 [cordova-plugin-file]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
745 浏览

cordova - 是否可以使用 cordova/phonegap 从自己的 Android 文件系统根目录中读取内容?

我想知道是否可以像在 Android 中那样从根目录读取文件File Manager?我想创建一个音乐播放器,如果可能的话,我想从设备中读取 .mp3 文件。

0 投票
1 回答
752 浏览

sqlite - 加载现有的 sqlite 数据库并在 ionic 的 chrome 浏览器中运行

我在 www/ 中有一个名为“test.db”的现有数据库。我通过使用cordova文件插件将文件传输到android中的正确路径来嵌入数据库以在android设备中工作,如下所示。

它适用于安卓设备。但是,我想在浏览器中运行它,以便通过命令(离子服务)快速开发应用程序。请告诉我如何嵌入 sqlite 数据库并在浏览器中运行。

0 投票
0 回答
125 浏览

cordova - Cordova App:在安装过程中将文件放在目录中

在我的应用程序中,我将包含一个信息部分,然后查看本地 pdf 文件。

为了使用默认应用程序打开文件,我已经使用了 fileopener2 插件,方法是下载并放入适当的文件夹,可从外部应用程序访问。

否则,现在文件已经是本地的,我不必下载它们,我会将它们包含在 apk 中。我该如何做到这一点,在安装应用程序期间,将此 pdf 直接复制到可访问的位置,例如 cordova.file.externalDataDirectory?

0 投票
0 回答
855 浏览

angularjs - 如何用离子编码视频base64

我正在使用cordova-plugin-media-capture视频,然后将其编码以从ionic+ angularjs上的应用程序base64发送到Web 服务。AWS

你有什么建议吗?

0 投票
1 回答
794 浏览

cordova - 读取文件系统 Windows apache cordova app

我正在使用 cordova-file 插件来读取我存储在我的应用程序中的文件并加载它以供用户查看。

我有以下代码:

目录解析为 ms-appx:///www/presentations/files/

该代码在 Android 中运行良好,但在 Windows 应用程序中,它返回错误代码 5,根据文档是 ENCODING_ERR。

我假设这是因为我的文件的路径不正确,但是文档说 ApplicationStorage 在 Windows 10 上工作并且没有发现任何表明 www/presentations/files/ 文件夹不存在的东西(它肯定存在于我的 deug 文件夹)。

我很想知道如何解决。即使我尝试像这样解析根目录:

我仍然得到同样的错误。任何指针将不胜感激。

编辑:

我查看了以下错误

https://github.com/Reon90/cordova-plugin-file/blob/a4df917e66d0c35cb3e11ca3257f54b8b7dd3eab/src/windows/FileProxy.js

我已将更改应用到文件,但仍然收到相同的错误

0 投票
1 回答
207 浏览

visual-studio - 如何将文件部署到 Apache Cordova 应用程序的数据目录

我希望在数据目录中包含一些文件作为我的应用程序的一部分。我正在使用 Visual Studio 创建应用程序。

如何包含要部署到数据目录的文件?我是否在我的项目中创建某个文件夹?我需要将它们标记为内容吗?

亲切的问候

0 投票
0 回答
71 浏览

android - 导出数据(离线):保存和共享文件

我想提供一种方便的方式将数据从我的 Cordova 应用程序备份给用户。最吸引我的是我的应用程序会将所有数据备份到 JSON 文件中,然后让用户以与任何其他文件相同的方式保存/共享它。

我已经将数据保存到真实文件并调用共享对话框,但文件无法共享/保存。这可能是因为外部应用程序无权访问我的应用程序创建的文件(GMail 说:'Permission denied for the attachement')并且我不知道如何允许外部应用程序访问我的应用程序创建的文件. 有任何想法吗?

我的代码:

0 投票
1 回答
254 浏览

android - 如何使用 PhoneGap 在文件中写入新行?

我可以编写一个文件并附加您的内容,但我不能创建新行。

示例:我需要每行输入一个数字

我尝试使用\nand \r(before and after of line) 返回但不起作用,所有内容都写在一行中。

我正在使用插件 cordova-plugin-file 来写入文件,正是这个函数writeFile

他们,怎么做新线?

0 投票
2 回答
4097 浏览

ionic2 - Ionic 2 / cordova-plugin-file File.writeFile() 拒绝正确创建二进制文件(png 图像)

总之

File.writeFile()尝试写入由 base64 数据制成的 Blob 时,会创建一个 0 字节的 PNG 文件。

在我的应用程序中,我试图创建一个包含存储在数据库中的 base64 数据的文件。数据的渲染等价物是先前从画布元素创建和存储的透明背景(从不超过 300 x 320 像素)上的黑色抗锯齿小曲线。我已经通过在线提供的各种 base64 编码器/解码器之一独立验证了存储的 base64 数据确实是正确的。

“离子信息”的输出

开发平台是 Windows 10,到目前为止,我一直在三星 Galaxy S7 和 S4 上直接进行测试。

我知道必须首先将 base64 数据转换为二进制数据(作为 Blob),因为 File 尚不支持将 base64 直接写入图像文件。我找到了各种技术来做到这一点,并且似乎最适合我需要的代码(并反映了我在 java 中完成它的类似方式如下所示):

构造函数的主要代码:

将 base64 转换为 Blob 的助手:

使用 File.writeFile() 保存图像

我尝试了几十种不同的解码技术,但效果都是一样的。但是,如果我将简单的文本数据硬编码到该writeFile()部分中,如下所示:

在预期位置正确创建了一个文本文件,其中包含上面的文本字符串。

但是,我注意到无论文件是 0 字节 PNG,还是上面的工作文本文件,在这两种情况下,File Promise 的“.then()”后果子句都不会触发。

此外,我交换了上述方法并使用Ionic 2 本机 Base64-To-Gallery库来创建图像,这没有问题。但是,将图像放在用户的图片库或相机胶卷中对我来说不是一个选择,因为我不希望在编组/打包/传输/删除数据渲染图像时冒用户自己的照片的风险。图像应作为应用程序的一部分创建和管理。

用户marcus-robinson似乎遇到了此处概述的类似问题,但它涉及所有文件类型,而不仅仅是此处的二进制类型。此外,该问题似乎已关闭:

https://github.com/driftyco/ionic/issues/5638

有没有人遇到类似的事情,或者可能发现我可能造成的一些错误?我已经尝试了几十种替代方法,但似乎都没有奏效。

0 投票
1 回答
1211 浏览

cordova - 在 ionic-native 中找不到 FilePath

我已经安装了以下插件:

当我运行 ionic build 时,似乎找不到 FilePath。

我的 .ts 文件中有以下导入语句

但是 FilePath 没有在 ionic-native 中定义。

我正在使用 Ionic 2 版本:2.1.13 和 Cordova 版本:6.4.0

我收到以下错误: