使用spark-md5
这个包计算文件的 md5 值,但是在 Uniapp 安卓端没有 FileReader 这个方法。
可以利用 plus.io.FileReader 读取照片 base64 内容,然后再计算 md5
代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
function getMD5(path) { return new Promise((resolve, reject) => { plus.io.resolveLocalFileSystemURL(path, entry => { var fileReader = new plus.io.FileReader(); fileReader.readAsDataURL(entry); fileReader.onloadend = function (evt) { var base64 = evt.target.result; var bin = atob(base64.split(",")[1]); var sparkMD5 = new SparkMD5(); sparkMD5.appendBinary(bin); var MD5 = sparkMD5.end(); resolve(MD5); }; fileReader.onerror = err => { reject(err); }; }); }); }
|
使用方法
1 2 3 4 5 6
| const { tempFiles } = await uni.chooseImage({ sizeType: ["compressed"], sourceType: ["camera"], }); const md5 = await this.getMD5(tempFiles[0].path); console.log("md5", md5);
|
版权声明: 此文章版权归houxiaozhao所有,如有转载,请注明来自原作者