我已经有一款适用于iOS和Android的应用已经推出了大约一年了。我刚刚开始从2.9升级到3.3,我遇到了文件上传的一些问题。
我能够让相机触发并且其他所有API看起来都运行良好,但是当涉及到FileTransfer API时,它会给我错误......或者更确切地说是非错误。 :)
我同时获得了文件传输以及config.xml中定义的文件和相机插件,就像这样...
<gap:plugin name="org.apache.cordova.camera" />
<gap:plugin name="org.apache.cordova.file" />
<gap:plugin name="org.apache.cordova.file-transfer" />
...但是当我去上传时,会抛出异常,并且我得到的失败对象始终为null。没有状态代码,没有任何东西。每个对象属性,null,null,null ......
查看我的IIS日志,它甚至看起来不像我的端点被发布到(我有两个不同的API我正在发布,而且它们都没有获得任何点击)。
我应该注意FileTransfer API的任何进一步更改吗?我正在重用现有的代码(几乎没有从PhoneGap的教程中修改过,这对我来说已经有一段时间了),但我不确定我应该注意哪些新的变化。代码片段看起来像这样,没什么好看的......
var photoFileName = photoLocation.substr(photoLocation.lastIndexOf('/') + 1);
var options = new FileUploadOptions();
options.fileKey = "adPhoto";
options.fileName = photoFileName;
options.mimeType = "image/jpeg";
var params = new Object();
params.ID = id;
params.photoState = thePhotoState;
options.params = params;
options.chunkedMode = true;
var ft = new FileTransfer();
ft.upload(photoLocation, Defaults.PhotoUploadService, photoUploadOK, photoUploadFail, options);
提前致谢!