TGC小程序

有幸参与了今年腾讯游戏嘉联华(即TGC),现场出现了一个挺奇特的小程序。

它是服务于线下的,主要服务于2017年腾讯游戏嘉年华现场展区的卡片收集活动。

由于是腾讯内部团队做的小程序,运行质量和涵盖内容都不错。

除了常规的线上资讯、场馆地图栏目外,这个小程序最特别的地方是有一个叫“卡片收集”的栏目。

这是个线上卡册,玩家在现场各个展区参加活动后会得到相应的卡牌,然后工作人员会用一个实体章在玩家手机上盖章,然后手机的某张卡牌就会点亮。

对于玩家来说,这是一个神奇的体验,现场很多同学会惊讶“高科技”,觉得好酷炫。

这个盖章的体验还应用到奖品兑换的环节,贯穿了整个“参与活动,兑换卡片,换取奖品”的过程。

写到这里,小程序就介绍完了,是时候给大家送点干货了。

首先了解一下这个idea的萌生历程。

做这个小程序的团队就是花叔所在的团队。

这想法要追溯到团队的一次团建活动,当时有一位胖纸工作表现比较好,拿了个优秀员工,于是就请大家去吃牛肉,埋单的时候收银员让花叔掏出手机打开一个H5,然后她掏出一个印章往手机上一盖,就看到手机上马上点亮了一个图标。

当时花叔和另一个同事突然眼前一亮,“TGC不正有个游园集卡活动小程序么?这货能用上啊!”

于是后来,花叔去搜索相关的资料,经过各种旁听侧敲,终于找到国内一家比较专业智能印章的公司,打电话过去问细节,发现对方也愿意合作,之后就把信息同步给项目组,项目组也认同这个想法,再之后,经过各方反复的几次沟通,最终定出了“智能印章的小程序接口方案”,也顺利接入到TGC的小程序中。

然后YY一下对这个技术的理解

其实这个印章的原理应该很简单,携带静电的导体接触手机的电容屏即为一次触碰。

而手机的电容屏一般支持多点触碰,假设导体印章上有一个矩阵,控制矩阵中某几点突出并接触到手机,这些点就达成了一次多点触碰的交互,获取这些点的位置和距离并进行运算就会得到一组密码,不同的印章凸出不同的点,就能让印章在某个区间内具备唯一性的标识。

所以技术并不难,难是难在造章工艺,考虑到制作新章的难度和成本问题,选择跟成型公司合作也不失为一个更好的选择。

不过听说对方一开始并没有提供小程序的相关接口,是确定合作后,对方单独研发的接口,所以说TGC的小程序应该是首个应用了智能印章的小程序。

最后谈一下坑

由于智能印章是基于多点触屏技术的,所以如果原本手机的多点触屏手势被占用的话,印章盖印将会失效,部分android系统提供了“三指触碰滑动截屏”的快捷方式,这个设置会导致智能印章的多点检测失败。

需要帮无法盖章的用户排查这种问题,其实就挺费时间了,幸运的是这个设置并不是默认打开。

再有,android手机千奇百怪,一些低端机是怎么都无法盖章,这时候需要做一个后备的“二维码”扫码方案。

-----------题外话

并不是只有新技术就是创新,有时候多门老技术的综合应用也是创新。

也许还有很多线上和线下的技术,只是我们还没发现他们,多一点留意、联想以及综合应用,一些新的想法或许就会萌生。

TGC的小程序,真有意思。

本文分享自微信公众号 - MinProgram(minijjoe)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )