快应用中的保存图片,有坑,踩着就中了,这里也要区分华为和其他厂商,虽然用调试器,在华为和官方提供的都不会出现问题,但是,在应用上线后就出现华为手机无法保存
let photoPath = 'http://xxxxxxx.png';
let list = photoPath.split('.');
/* 用时间来作为图片的名字 */
let timeValue = new Date().valueOf();
/* 获取图片后缀 */
let photoExt = list[list.length - 1];
/* 设置要保存的图片名 */
let filename = `${timeValue}.${photoExt}`;
/* 然后加入filename字段,进行下载操作后对下载任务进行监听 */
之后用request.onDownloadComplete来监听下载任务,若返回1000则下载任务失败
下载成功后使用media.saveToPhotosAlbum来保存图片
let photoPath = 'http://xxxxxxx.png';
let list = photoPath.split('.');
/* 用时间来作为图片的名字 */
let timeValue = new Date().valueOf();
/* 获取图片后缀 */
let photoExt = list[list.length - 1];
/* 设置要保存的图片名 */
let filename = `${timeValue}.${photoExt}`;
request.download({
url: photoPath,
filename: filename,
success: data => {
/* 监听下载任务:1000下载失败,1001下载任务不存在 */
request.onDownloadComplete({
token: data.token,
success: data => {
/* 保存图片 */
media.saveToPhotosAlbum({
uri: data.uri,
success: () => {
prompt.showToast({
message: '图片保存成功!'
})
},
fail: (data, code) => {
if(code == 201) {
prompt.showToast({
message: '授权成功后才能保存图片哦'
})
} else if(code == 202) {
prompt.showToast({
message: '请刷新后重试'
})
} else if(code == 300) {
prompt.showToast({
message: 'I/O错误,图片保存失败'
})
}
}
})
},
fail: (data, code) => {
if(code == 1000) {
prompt.showToast({
message: '图片下载失败'
})
} else if(code == 1001) {
prompt.showToast({
message: '下载任务不存在'
})
}
}
})
},
fail: () => {
}
})
何谓「快应用」呢?它是基于手机硬件平台的新型应用形态,标准是由主流手机厂商组成的快应用联盟联合制定。其标准的诞生将在研发接口、能力接入、开发者服务等层面建设标准平台,以平台化的生态模式对个人开发者和企业开发者全品类开放
语法上像极了VUE和微信小程序的结合版。配置文件内没有小程序一样可直接配置程序的tab页。处理方法:写一个Main入口文件,使用tab组件引入对应的模块即可。
内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!