uniApp 中对base64格式编码保存到手机相册

本文介绍如何使用Base64字符串保存图片到本地,并通过调用特定函数实现图片保存及读取权限配置。文中详细展示了在移动应用开发中如何处理Base64数据转换为图片文件的过程,并确保应用程序能够正确地访问用户的相册。

1. 开启调用app权限读写

1.1  android.permission.READ_EXTERNAL_STORAGE  读权限

1.2  android.permission.WRITE_EXTERNAL_STORAGE 写权限

2.对拿到的base64传递到saveBase64Img函数中

 saveBase64Img(base64) {
                const bitmap = new plus.nativeObj.Bitmap('test');
                bitmap.loadBase64Data(
                    base64,
                    function() {
                        const url = '_doc/' + new Date() + '.png'; // url建议用时间戳命名方式
                        console.log('url:', url);
                        bitmap.save(
                            url, {
                                overwrite: true,// 是否覆盖
                                quality: 100 // 图片清晰度
                            },
                            i => {
                                uni.saveImageToPhotosAlbum({
                                    filePath: url,
                                    success: function() {
                                        console.log('保存成功');
                                        bitmap.clear();
                                    }
                                });
                            },
                            e => {
                                console.log('保存失败', e);
                                bitmap.clear();
                            }
                        );
                    },
                    e => {
                        console.log('保存失败', e);
                        bitmap.clear();
                    }
                );
            }

 3.有的人会碰到uni.saveImageToPhotosAlbum is not function 就是因为没有提前在manifest.json app模块中开启访问 读写相册的权限

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值