最近在用ionic开发app,有一个需求是下载设备的资料资料包括图片、word等多种格式,查阅文档,cordova与ionic的file-transfer插件可以满足需求,于是乎,开启了踩坑之路!
一、安装、调用、调试
按照官方提供的方法,npm install了file与file-transfer
然后文件里正常调用,因为项目需求,我只用了download
代码写好,一切就绪了,build之后用xcode打包,准备在手机上调试,遇到了文件路径的相关问题…
二、坑来了
刚开发的下载出问题了,寻思着先添加一个试试,结果,坑出现了,之前开发好的图片上传功能全部都不能用了,从头到尾检查了一下代码,并没有任何改动,然后去gitlab上查阅相关的提交记录,进行版本回滚,一边测试之前的旧代码,一边猜测会不会是安装了file相关cordova插件影响的…
经过四五个版本回滚,确定照片上传功能不能用就是因为cordova file插件影响的,如上的截图,官方提供的有文件上传的方法,需要按照它的标准来,而之前写的原生的new File方法被拦截,无法请求接口,附上代码
拍照获取base64格式的图片,先是转成file格式,再通过form-data格式上传,此处展示的仅有一张图片上传,整个项目很多地方的上传还有其他参数,所以衡量一下前后台改动的成本,决定曲线救国,直接新开窗口,在线浏览!!!
所以,cordova插件跟原生方法有冲突!暂时没有做下载的功能,后续空闲了会继续探索…