• <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        當前位置:雨林木風下載站 > 應用軟件教程 > 詳細頁面

        小程序中將base64圖片保存到相冊中的方法介紹

        小程序中將base64圖片保存到相冊中的方法介紹

        更新時間:2025-09-20 文章作者:未知 信息來源:網絡 閱讀次數:

        微信小程序,簡稱小程序,英文名Mini Program,是一種不需要下載安裝即可使用的應用,它實現了應用“觸手可及”的夢想,用戶掃一掃或搜一下即可打開應用。小程序是一種不用下載就能使用的應用,也是一...
        微信小程序,簡稱小程序,英文名Mini Program,是一種不需要下載安裝即可使用的應用,它實現了應用“觸手可及”的夢想,用戶掃一掃或搜一下即可打開應用。小程序是一種不用下載就能使用的應用,也是一項門檻非常高的創新,經過將近兩年的發展,已經構造了新的小程序開發環境和開發者生態。
        本篇文章給大家帶來的內容是關于小程序中將base64圖片保存到相冊中的方法介紹,有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

        一、授權獲取

        1、相關api
        wx.getSetting
        wx.authorize

        2、授權獲取流程一般為
        是否有該權限 ——> 若無 ——> 調起授權彈窗 ——> 同意 ——> 使用相關api
        (如果用戶拒絕授權則可使用wx.opensetting引導用戶前往授權設置頁授權)

        3、代碼實現

        static async weAuthCheck(type = 'address') {
            let resGetting = await new Promise((resolve, reject) => {
                wepy.getSetting({
                    success: res => {
                        // console.log(res, 'getsetting')
                        if (res.authSetting.hasOwnProperty(`scope.${type}`) && res.authSetting[`scope.${type}`]) {
                            resolve({
                                succeeded: true
                            })
                        } else {
                            wepy.authorize({
                                scope: `scope.${type}`,
                                success: () => {
                                    resolve({
                                        succeeded: true
                                    })
                                },
                                fail: err => {
                                    // console.log(err, 'errrrr')
                                    resolve({
                                        succeeded: false,
                                        err: err
                                    })
                                }
                            })
                        }
                    },
                    fail: err => {
                        resolve({
                            succeeded: false,
                            err: err
                        })
                    }
                })
            })
            console.log('getSetting res: \n', resGetting)
            return resGetting
        }

        二、寫入臨時文件

        1、相關api
        文件系統
        writeFile

        2、參數encoding 用于說明 寫入的參數data的格式是什么,并非是將data按encoding的形式寫入。在這里我們應該指定encoding為base64

        3、代碼實現

        // 先獲得一個實例  this.fileManager = wx.getFileSystemManager()
        this.fileManager.writeFile({
            filePath: `${wx.env.USER_DATA_PATH}/qrcode_${timestamp}.png`,
            data: data,
            encoding: 'base64',
            success: res => {
                console.log('res: \n:', res)
            },
            fail: res => {
                console.log(res)
            }
        })

        三、格式化字符串

        1、base64字符串的格式: "data:image/png;base64,...........",逗號前面這一段為格式說明,用于說明后續的內容格式是圖片格式為png的base64格式。

        2、如果直接將整一串字符傳入,雖然可以保存成功,但是將導致圖片文件格式錯誤。因此再做一步切割操作

        let startIdx = this.qrcode.indexOf('base64,') + 7

        四、完整實現

        async onTapSaveQrcode() {
            let startIdx = this.qrcode.indexOf('base64,') + 7
            let resCheck = await this.$weAuthCheck('writePhotosAlbum')
            let timestamp = new Date().getTime()
            let self = this
            if (resCheck.succeeded) {
                wepy.showLoading()
                this.fileManager.writeFile({
                    filePath: `${wx.env.USER_DATA_PATH}/qrcode_${timestamp}.png`,
                    data: this.qrcode.slice(startIdx),
                    encoding: 'base64',
                    success: res => {
                        console.log('res: \n:', res)
                        wx.saveImageToPhotosAlbum({
                            filePath: `${wx.env.USER_DATA_PATH}/qrcode_${timestamp}.png`,
                            success: res => {
                                self.$emit('save-qrcode-success')
                                wepy.showToast({
                                    title: '保存成功'
                                })
                            },
                            fail: err => {
                                console.log(err)
                                if (!err.errMsg.includes('cancel')) {
                                    wepy.showToast({
                                        title: err.errMsg,
                                        icon: 'none'
                                    })
                                }
                            },
                            complete: () => {
                                wepy.hideLoading()
                            }
                        })
                    },
                    fail: res => {
                        wepy.hideLoading()
                        console.log(res)
                    }
                })
            }
        }

        以上就是小程序中將base64圖片保存到相冊中的方法介紹的詳細內容,更多請關注php中文網其它相關文章!


        小程序是一種不需要下載安裝即可使用的應用,它實現了應用“觸手可及”的夢想,用戶掃一掃或者搜一下即可打開應用。

        溫馨提示:喜歡本站的話,請收藏一下本站!

        本類教程下載

        系統下載排行

        主站蜘蛛池模板: 在线观看亚洲一区二区| 亚洲国产精品久久久久婷婷软件| 亚洲国产成人精品无码区在线网站| a级毛片在线免费| 亚洲精品无码鲁网中文电影| 特级毛片爽www免费版| 亚洲国产精品视频| 免费人妻精品一区二区三区| 在线免费观看国产视频| 美女免费精品高清毛片在线视| 在线观看免费污视频| 亚洲欧美日韩久久精品| 日本免费v片一二三区| 女bbbbxxxx另类亚洲| 日批日出水久久亚洲精品tv| 日韩在线一区二区三区免费视频| 日韩亚洲精品福利| 中国一级全黄的免费观看| 久久精品国产69国产精品亚洲| 免费一级毛片在线播放视频| 亚洲AV成人无码久久精品老人| 日韩精品无码免费一区二区三区| 亚洲色欲www综合网| 91视频国产免费| 亚洲AV永久无码精品网站在线观看| 日韩一级在线播放免费观看| 黄页视频在线观看免费| 日日噜噜噜噜夜夜爽亚洲精品 | 亚洲日韩看片无码电影| 国外成人免费高清激情视频| 日韩在线观看免费| 久久久久久亚洲精品成人| 日韩精品成人无码专区免费| 精品在线免费视频| 亚洲avav天堂av在线不卡| 美女被免费喷白浆视频| 美女被暴羞羞免费视频| 亚洲成AV人在线观看天堂无码| 日本三级2019在线观看免费| 麻豆69堂免费视频| 亚洲国产综合人成综合网站00|