我已经为此战斗了一段时间。我没有找到其他很多人遇到此问题,并且我找到的人都没有安装File插件。
就我而言,文件插件是作为文件传输的依赖项安装的。
问题:当我直接从PC上构建应用程序并将其安装到Android设备上时,一切正常,但是使用PhoneGap Build进行构建时,则无法正常工作。
发生了什么:在app.initialize()中,我称为cordova.file.applicationStorageDirectory:
var app = {
initialize: function() {
this.bindEvents();
},
bindEvents: function() {
document.addEventListener("deviceready", this.onDeviceReady, false);
},
onDeviceReady: function() {
initApp();
alert(1);
alert(cordova.file.applicationStorageDirectory);
alert(2);
}
};
当我在本地构建和安装时,将显示所有三个警报,并且目录路径正确,但是在alert(1);
显示由PhoneGap Build构建的目录时,却没有显示后两个调用。这使我相信cordova.file是未定义的。
我已经尝试使用PhoneGap Build的远程调试工具,但是尽管文档说应该可以,但是在控制台中似乎没有任何显示。
这里是安装的插件:
这是我的config.xml:
<?xml version='1.0' encoding='utf-8'?>
<widget xmlns = "http://www.w3.org/ns/widgets"
xmlns:gap = "http://phonegap.com/ns/1.0"
id = "id-removed"
version = "0.0.0">
<preference name="phonegap-version" value="3.3.0" />
<name>Name removed</name>
<description>
Description removed.
</description>
<author email="email removed" href="removed">
Removed
</author>
<content src="index.html" />
<icon src="icon.png" />
<preference name="Orientation" value="portrait" />
<access origin="*" />
<gap:plugin name="org.apache.cordova.camera" version="0.2.9"/>
<gap:plugin name="org.apache.cordova.device-motion" version="0.2.6"/>
<gap:plugin name="org.apache.cordova.device-orientation" version="0.3.5"/>
<gap:plugin name="org.apache.cordova.file-transfer" version="0.4.2"/>
<gap:plugin name="org.apache.cordova.geolocation" version="0.3.7"/>
<gap:plugin name="org.apache.cordova.globalization" version="0.2.6"/>
<gap:plugin name="org.apache.cordova.inappbrowser" version="0.2.4"/>
<gap:plugin name="org.apache.cordova.network-information" version="0.2.7"/>
<gap:plugin name="de.appplant.cordova.plugin.local-notification" version="0.7.4"/>
</widget>
任何帮助表示赞赏。
好吧,我几个小时前才明白我的眼神:
在官方文件中,它说:
从v1.2.0开始,提供了指向重要文件系统目录的URL。[...]
在使用phonegap构建平台构建项目时,最新可用版本为1.0.1。
看到那里:https : //build.phonegap.com/plugins/617
请问这种情况cordova.file
会一直存在undefined
。
Phonegap构建似乎在升级插件(甚至是核心插件)时遇到了一些困难。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句