9***@qq.com
9***@qq.com
  • 发布:2024-11-19 17:51
  • 更新:2024-11-19 17:51
  • 阅读:67

【报Bug】uni.saveImageToPhotosAlbum保存图片和uni.previewImage默认的长按保存报错

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 11

手机系统: Android

手机系统版本号: Android 15

手机厂商: 华为

手机机型: p40

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: CLI

CLI版本号: 3.0.0-4020920240930001

示例代码:

查看大图默认长按保存

function previewImage({ urls, index }) {  
    uni.previewImage({  
        urls,  
        current: index,  
    });  
}

自定义longPressActions

uni.previewImage({  
                urls,  
        current: index,  
        longPressActions: {  
            itemList: ["保存图片"],  
            success: async (data) => {  
                if (data.tapIndex == 0) {  
                    //保存图片  

                        saveImgToLocal(urls[data.index]);  

                }  
             },  
            fail: function (err) {  
                console.log(err.errMsg);  
                },  
        },  
    });  
function saveImgToLocal(url) {  
    uni.downloadFile({  
        url, //图片地址  
        success: (res) => {  
            if (res.statusCode === 200) {  
                uni.saveImageToPhotosAlbum({  
                    filePath: res.tempFilePath,  
                    success: () => {  
                        uni.showToast({  
                            title: "保存成功到相册",  
                            icon: "none",  
                        });  
                    },  
                    fail: (err) => {  
                        console.log(err);  

                        uni.showToast({  
                            title: "保存失败",  
                            icon: "none",  
                        });  
                    },  
                });  
            }  
        },  
        fail: (err) => {  
            console.log(err);  
        },  
    });  
}

操作步骤:

调用uni.previewImage方法查看大图
长按保存到相册
或者自定义longPressActions调用

uni.downloadFile({  
        url, //图片地址  
        success: (res) => {  
            if (res.statusCode === 200) {  
                uni.saveImageToPhotosAlbum({  
                    filePath: res.tempFilePath,  
                    success: () => {  
                        uni.showToast({  
                            title: "保存成功到相册",  
                            icon: "none",  
                        });  
                    },  
                    fail: (err) => {  
                        console.log(err);  

                        uni.showToast({  
                            title: "保存失败",  
                            icon: "none",  
                        });  
                    },  
                });  
            }  
        },  
        fail: (err) => {  
            console.log(err);  
        },  
    });

预期结果:

成功保存到相册

实际结果:

保存失败
uni.saveImageToPhotosAlbum报错

{  
    "errMsg": "saveImageToPhotosAlbum:fail No Permission",  
    "code": 12  
}

uni.previewImage默认的长安保存方法报错保存失败

bug描述:

uni.saveImageToPhotosAlbum保存图片报错
{
"errMsg": "saveImageToPhotosAlbum:fail No Permission",
"code": 12
}
uni.previewImage默认的长按保存
提示保存失败

2024-11-19 17:51 负责人:无 分享
已邀请:

要回复问题请先登录注册