我在我的Ionic应用程序中使用cordova-plugin-file下载图像并保存到本地。
当我在模拟器或iPhone上运行时,没有错误,但是当我在Chrome中测试时,当我尝试访问cordova.file.dataDirectory
时,它会显示“cordova未定义
”。
我该如何在Chrome中运行cordova-plugin-file?
我在我的Ionic应用程序中使用cordova-plugin-file下载图像并保存到本地。
当我在模拟器或iPhone上运行时,没有错误,但是当我在Chrome中测试时,当我尝试访问cordova.file.dataDirectory
时,它会显示“cordova未定义
”。
我该如何在Chrome中运行cordova-plugin-file?
Cordova只能在设备上使用,无法在浏览器中使用。
在您的index.html文件中应该有这个脚本引用:
<!-- cordova script (this will be a 404 during development) -->
<script src="cordova.js"></script>
正如注释所说,此脚本在开发过程中不可用,它将在构建过程中被替换。
您可以自己尝试一下:
cordova platform add android
那么
cordova build
你应该在 platforms\android\assets\www
目录下找到2个 JavaScript 文件:cordova.js 和 cordova_plugins.js。
另一种选择是将浏览器作为平台添加:
cordova platform add browser
然后运行它:
cordova run browser
但你可能会遇到一些麻烦。
你可以轻松地将cordova.js复制到你的根目录进行测试。该文件位于以下目录:
cordova-project/platforms/ios/platform_www
你可以轻松地将其复制过去。如果这样做,cordova对象就可用并且可以在你的代码中访问。
cordova.file.dataDirectory
phonegap serve browser
命令。这样,您可以方便地在计算机上测试应用程序,而不必将其发送到设备。需要指出的是,上述cordova.file.dataDirectory在计算机上不可用。一些插件为浏览器平台提供代理,您也可以在浏览器中测试它们。
对我来说,phonegap serve browser的好处是当您编辑代码并保存后,重新加载浏览器即可反映更改。
我必须提到另一个使代码更改反映工作的要点。您必须在Cordova项目根文件夹内创建一个 .cordova 目录。然后,您必须添加一个 config.json 文件,并填入以下内容:
{
"lib": {
"www": {
"id": "com.phonegap.helloworld",
"version": "3.5.0",
"uri": "https://github.com/phonegap/phonegap-app-hello-world/archive/3.5.0.tar.gz"
}
}
}
正如SO中的以下帖子所述: 在Cordova项目中让PhoneGap服务器工作