应用程序开发公司
软件开发

针对您的项目需求及预算规划量身制定方案

个体/中小企业/集团/政府机构/行业组织 了解详情 了解详情

微信小程序实现二维码扫描与生成:调用API与开发技巧

发布时间:2024-01-01 00:00 浏览次数:55

微信小程序一直以来都就是一个倍受高度关注的研发平台,因为为微信用户提供更多了更为方便快捷的服务。对于想研发微信小程序的人来说,介绍微信小程序的调用API和研发技巧,尤其就是二维码读取与分解成,就是必不可少的。


本篇文章将可以了解微信小程序二维码读取与分解成的调用API和研发技巧,协助读者快速介绍二维码有关研发的技术要点。


一、什么就是微信小程序二维码


微信小程序二维码就是用户步入小程序的一种方式。二维码通常用以存储网址信息,用户采用微信读取二维码后可以自动关上小程序。


微信小程序二维码通常涵盖小程序的appid和path等信息,通过这些信息,微信可以快速地找出对应小程序并重定向至适当的页面。


二、微信小程序二维码分解成


分解成微信小程序二维码就是非常简单的,只须要一些基本的API就可以了。我们可以采用微信提供更多的官方API分解成一个二维码图片。分解成的二维码图片可以用作展现、互动和列印等。


1、调用API分解成微信小程序二维码


微信小程序提供更多了一个官方API,可以使我们同时实现二维码的分解成。我们可以采用 wx.createQRCode 方法去建立二维码。通过USB所回到的 buffer 可以轻易图形成图片表明。


具体内容代码同时实现如下:


wx.request({


url: 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET',


success (res) {


// access_token 以获取,这里预设已赢得


wx.request({


url: 'https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=' + res.data.access_token,


method: 'POST',


responseType: 'arraybuffer',


data: {


scene: 'a=1&b=2', // 自定义参数,可以传达任一参数


page: 'pages/index/index', // 关上的页面


width: 430, // 分解成的图片宽度,预设为 430


auto_color: false, // 与否自动调整颜色,预设为 false


},


success (res) {


var buffer = wx.base64ToArrayBuffer(wx.arrayBufferToBase64(res.data));


// 分解成二维码图片,并展现


wx.showToast({


title: '二维码分解成顺利!',


icon: 'none',


duration: 2500,


success: function() { wx.previewImage({ urls: [res.tempFilePath] }); }


})


}


})


}


})


2、微信小程序二维码展现


分解成的微信小程序二维码图片,我们可以用 wx.previewImage 方法展开展现。具体内容代码如下:


wx.previewImage({


current: url, // 当前表明图片的http链接


urls: [url] // 须要预览的图片链接列表


})


三、微信小程序二维码读取


微信小程序提供更多了一个能读取二维码的API,可以在小程序中出访摄像头并辨识二维码的信息。以下就是二维码读取的方法:


1、调用API读取二维码


微信提供更多的API可以使我们在小程序中调用扫码功能。以下就是具体内容代码:


wx.scanCode({


success (res) {


console.log(res)


}


})


2、权限提出申请


因为读取二维码须要出访手机的摄像头,所以我们须要在代码中提出申请许可。提出申请许可的方法十分直观,只须要在 app.json 中登记注册一项“camera”权限即可。


{


"pages": [ "pages/index/index" ],


"window": {


"backgroundTextStyle": "light",


"navigationBarBackgroundColor": "#fff",


"navigationBarTitleText": "微信小程序二维码读取与分解成",


"navigationBarTextStyle": "black"


},


"tabBar": {},


"permission": {


"scope.userLocation": {


"desc": "时间轴展现地点"


},


"scope.camera": {


"desc": "读取二维码功能所须要权限"


}


}


}


四、微信小程序二维码调用技巧


1、优化微信小程序二维码的分解成


微信小程序提供更多的二维码API可以分解成任一尺寸的二维码,为了增大分解成的二维码图片的大小,提高用户访问速度,我们可以将分解成的二维码内存至本地。导入小程序的 cache API,即可同时实现内存代码。


wx.downloadFile({


url: url,


success: (...args) => {


console.log('download:', args)


wx.getFileSystemManager().writeFileSync(tempFilePath, args[1].tempFilePath, 'binary') // 内存二维码


wx.previewImage({


current: tempFilePath,


urls: [tempFilePath]


})


},


fail: (err) => console.error(err)


})


2、微信小程序二维码的展现延后


通过调用 wx.previewImage 方法,我们可以将分解成的二维码展现给用户。但是,在网络不好的情况下,由于 networkType 为 4G 以及移动网络的延后问题,可能会发生网络交通堵塞的情况,影响二维码图片展现的速度。为了提高用户的访问速度,我们可以将图片展现延后至用户出访小程序的一定边线。


这里得出了一个直观的延后展现的方法:


wx.showLoading({


title: '正在展现...'


});


wx.navigateTo({


url: './qr_code/qr_code?' + 'url=' + encodeURIComponent(url)


})


setTimeout(function () {


wx.hideLoading()


}, 2500)


总结


微信小程序二维码分解成和读取就是微信小程序开发的关键技术,本文了解了微信小程序分解成和读取二维码的API,以及继续执行读取二维码的方法。除此之外,本文还提供更多了一些微信小程序二维码调用的技巧,协助读者介绍微信小程序有关研发的技术要点。

TAG标签:
阅读推荐