cordova.file 在 Intel XDK Crosswalk 版本中

cordova.file in Intel XDK Crosswalk builds

我正在使用 Cordova File、Cordova FileTransfer 和 Cordova Device API 下载文件,并检查了 windows XDK 应用程序中的所有文件,但 cordova.file 在 cordova crosswalk 构建中未定义,我在 Cordova windows 构建(使用 cmd)中使用相同的版本和相同的代码并且它有效。

英特尔 XDK 版本 1621

org.apache.cordova.file: 1.3.2

我的 html 在正文末尾:

<script src="./cordova.js"></script>
<script src="./intelxdk.js"></script>
<script>
function onDeviceReady() {
   console.log(cordova.file);
   alert(cordova.file);
}
document.addEventListener("deviceready", onDeviceReady, false);
</script> 

是否有其他解决方案可以得到 cordova.file.dataDirectory

或者我只能等待另一个版本来管理它?

您确定添加了插件吗?再次尝试构建并查看构建日志。听起来像是构建过程中的一个错误,导致无法添加插件。

仅供参考:

org.apache.cordova.file XDK(1621) 中使用的版本是 1.1.0 并且没有 cordova.file 所以我将 XDK 中的文件插件版本更改为 1.3.2 但没有结果因为使用 EmulatorDebugger(使用 XDK Crosswalk 应用程序)

我确定使用此方法包含文件插件:

JSON.stringify(cordova.require('cordova/plugin_list').metadata, null, 1)

但仿真器和调试器继续使用版本 1.1.0

然后我从 XDK 中的 BUILD 页面构建它,它使用版本 1.3.2 工作并显示。 问题已解决。

很抱歉,我在发布之前没有尝试过,但每次在我的防御建筑中,下载它,然后在设备上安装它需要很长时间,每次测试需要 20 分钟,而且不是很合乎逻辑。

更新模拟器插件

当我发现 XDK 在模拟器中使用默认版本的插件时,我决定在 Windows:

的 XDK 文件夹中手动更新插件
%LOCALAPPDATA%\Intel\XDK\xdk\components\server\cordova-plugins

我刚刚删除了 org.apache.cordova.file 文件夹并从 https://github.com/apache/cordova-plugin-file 获得了新的克隆,以便在更新版本的 Emulator 中进行测试。

在 Intel App Preview 中使用更新的插件(这可能会导致其他选项卡出现问题)

只需更新 Windows 中此文件夹中的插件:

%LOCALAPPDATA%\Intel\XDK\xdk\brackets\b\extensions\default\StaticServer\node\node_modules\cp\res\middleware\cordova\intel-app-preview\android\plugins

Debugger 与更新的插件配合得很好。


方便更新

从 git 在每个文件夹中像这样克隆:

在文件夹 org.apache.cordova.file

git init && git remote add origin https://github.com/apache/cordova-plugin-file.git && git pull

现在您拥有 git 中的所有版本。

要更新所有插件,您只需 运行 插件根目录中的此 bash 命令:(在 Windows 中使用 Git Bash)

for i in $(find $PWD -maxdepth 1 -type d); do echo $i && cd $i && git pull; done