uniapp 保存二维码到手机相册【APP】【小程序】

 

const save = (base64) => {// #ifdef APP-PLUS
        const bitmap = new plus.nativeObj.Bitmap("base64");
        bitmap.loadBase64Data(base64, function() {
            const url = "_doc/" + new Date().getTime() + ".png";
            console.log('saveHeadImgFile', url)
            bitmap.save(url, {
                overwrite: true, // 是否覆盖
                quality: 'quality' // 图片清晰度
            }, (i) => {
                uni.saveImageToPhotosAlbum({
                    filePath: url,
                    success: function() {
                        uni.showToast({
                            title: '图片保存成功',
                            icon: 'none'
                        })
                        bitmap.clear()
                    }
                });
            }, (e) => {
                uni.showToast({
                    title: '图片保存失败',
                    icon: 'none'
                })
                bitmap.clear()
            });
        }, (e) => {
            uni.showToast({
                title: '图片保存失败',
                icon: 'none'
            })
            bitmap.clear()
        });
        // #endif

        // #ifdef MP-WEIXIN
        base64 = base64.replace(/^data:image\/\w+;base64,/, "")var fileManager = uni.getFileSystemManager();
        const url = wx.env.USER_DATA_PATH + '/' + new Date().getTime() +".png" 
        console.log('开始', url)
        fileManager.writeFile({
            filePath: url, // 指定图片的临时路径
            data: base64, // 要写入的文本或二进制数据
            encoding: 'base64', // 指定写入文件的字符编码
            success: res => {
                console.log('写入文件成功', res)
                console.log(url)
                uni.saveImageToPhotosAlbum({ // 保存图片到相册
                    filePath: url,
                 success: function(res) {
                        console.log('保存成功', res)
                        uni.showToast({
                            title: '保存成功',
                        })
                    },
                    fail: function(err) {
                        console.log('保存失败', err)
                    }
                })
            },
            file: err => {
                console.log('写入文件失败', err)
            }
        })
        // #endif
    };

 

posted @ 2022-11-03 16:09  Fly_bokeyuan  阅读(517)  评论(0编辑  收藏  举报