我有Phonegap移动应用程序,我正在使用Camera API使用此代码捕获图片:
navigator.camera.getPicture(function(data){
$.post('http://www.example.com', {data:data});
}, function(msg){alert(msg);}, { quality: 20 });
这没关系,但是根据所使用的移动设备,需要将质量选项设置为合理的值。有些人可以处理高于70的值,但是即使值为20,低端设备也会遇到麻烦.Phonegap文档提到了这些问题,因为整个图片存储在Base64字符串中所以需要内存。 Phonegap建议改为指定选项destinationType: Camera.DestinationType.FILE_URI
但据我所知,我会得到存储图片的本地文件路径,我必须使用FileReader API将其读入一个变量。然后$.post
再次以与我现在正在做的相同的方式。
对我来说,似乎如果我将destinationType从Base64更改为FILE_URI,我将无法获得任何内容,并且在从本地文件读取变量并POST它时仍然会遇到相同的内存问题。
我的想法是对的吗?或者我错过了什么,使用FILE_URI destionationType会有一些优势?或者有更好的方法来上传拍摄的照片吗?
答案 0 :(得分:4)
好的,所以新的1.0.0 Phonegap文档只回答了这个问题。可以在http://docs.phonegap.com/phonegap_file_file.md.html#FileTransfer
找到它