话说,8月18日微信小程序的开发能力更新了。
关注小程序的读者从版本号就能发现,1.4版本的基础库经历了三个版本,最近上一次版本号是1.4.3,这次是1.5.0而不是1.4.4,可见这是一个大版本更新。
更新了些啥呢?足足有56项,花叔研究了其中一些可能影响较大的变动,总结了一下有以下几点:
接下来稍微解读一下这些API。
首先,看看“指纹识别”:
听到“指纹识别”,大家就感觉一定是个高科技玩意,但对于好多同学来说,说不定连它的基本原理和使用场景都没搞清楚吧,花叔看了看别的公众号文章的介绍,这类文章不是纯搬官方描述,就是浅尝则止,今天花叔抛砖引玉分析一下,希望对大家有用。
背景:
其实这API源于一个叫“TENCENT SOTER”的、微信团队做的生物认证解决方案,这是一个开源的项目,而且提供的接口形式不仅限于小程序,在公众号、服务号甚至APP中都有提供接口。
不过在公布开源的时候,官方只提供了企业号接入的接口文档,其他平台的接入文档需要发邮件去申请,当时花叔没懂为什么这么藏藏捏捏不放开,现在终于懂了,为的是让微信官方直接集成到小程序的API文档里,当作小程序的一个新能力发布,都是套路呀。
所以,既然老早就有,那么在这个指纹识别“新能力”发布前,花叔就很自觉地拿到了小程序侧的接口文档,参与了这个API的测试。
原理:
读取当前生物提供信息(例如用户触摸iphone的home键时的指纹信息),并与本机已存的信息进行校对,若校对成功返回安全信息以及秘钥,该秘钥可通过一个官方提供的远程接口进行二次校验。
值得提醒的是,“本机已存的信息”是用户在手机系统配置中录入的,这个API提供的仅仅是“校验”能力,什么意思?说白了就是说它只管校验你是否是这个手机的机主。
所以,别想着用这个接口来收集用户的生物信息,也别想着把手机中已经存储的生物信息读取出来,这些都是不行的。
代码:
小程序官方提供两个公用方法(具体可参考官方开发文档):
能实现什么产品逻辑:
很抱歉告诉大家,这货作用很受限制,从上面的分析就能看出,他仅能用作手机与用户从属关系的校验,在花叔看来目前只有在某些强校验的场景下,如支付、授权处理敏感操作等场景,才有它的用武之地。
从“安全”角度看,这确实是一个了不起的API,但从“技术驱动产品创新”角度看,它没提供太多的想象空间。
然后,看看“分享自定义配图”:
终于是支持了,可以爽歪歪地定义美女图了,跟H5比起来,还是特大号的分享图!
现在开发者可以在onShareAppMessage事件的options参数里追加imageUrl参数实现自定义分享图。
onShareAppMessage: function (res) {
return {
title: '自定义转发标题',
imageUrl:'http://xxx.com/test.jpg',
path: '/page/user?id=123',
success: function(res) { // 转发成功
},
fail: function(res) { // 转发失败
}
}
}
值得注意的是:
然后,看看“获取发票抬头”:
可能有些同学看到这个API会懵逼,发票抬头?什么鬼?
普及一下先,话说在微信个人页里目前是能定义发票抬头的(用户现在在外消费要想店家索要发票的时候,店家会让用户提供发票抬头信息,微信为了方便大家,就在个人页里加了一个记录发票抬头的页卡)
除了这种录入方式外,微信官方还提供了一个小程序来录入发票抬头信息:
然后,现在您的小程序代码里可以通过wx.chooseInvoiceTitle这个方法去获取这些信息了:
wx.chooseInvoiceTitle({
success(res) {
}
})
有啥用呢?
就是让发票抬头信息共享,对于网购类小程序特别有用,跟记录收货地址一样的体验。
题外话,这接口并没有提供“写”操作,那些同类型的发票抬头记录小程序,你们的存在还有何意义?
然后,看看“获取更多系统信息”:
其实本次更新还有个不可忽略的点,这一点官方通告里是没有提及到的
U
更新 API getSystemInfo
增加 fontSizeSetting 支持读取用户字体大小设置U
更新 API getSystemInfo
增加 brand 支持读取手机品牌字段花叔这里解释一下,相当于说小程序可以通过wx.getSystemInfo方法获取“微信-我-设置-通用-字体大小”中定义的字体规格;同时小程序也能获取收手机的品牌名。
至此,小程序内能获取的系统信息包括:
有什么用?用研数据统计哈!
最后,谈谈“APP分享的小程序链接可获取群相关信息”:
话说,很久以前小程序就有一个能力,它给非微信APP开了一个入口,它们可以给微信内分享一个链接,这个链接在点击的时候可以去到某个小程序里面,具体可参考文章《重磅 | 小程序新增六大能力!面向个人开发者开放》的最后一点。
也可以参考微信开发平台的“分享与收藏开发文档”:
https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419317332&token=&lang=zh_CN
这是利用现有APP为小程序导量的手段,当时分享的链接就是纯粹的一个链接,现在的意思大概是:app开发的同学们!只要你们也做个小程序,你们以后从app要分享到微信时,就能做群应用了!很酷有木有!赶紧做小程序吧!
据花叔所知,目前可能仅有腾讯视频是做了这个功能:
虽然花叔个人觉得这种导量方式可能玩不出什么花样,但毕竟微信团队不遗余力地去更新了这个特性,花叔觉得站在技术角度必须支持一下!