本文背景
本文以党建答题活动为背景,该活动从6月22号0点持续到6月30号晚上12点,参与人数500人,答题记录500*9*2
活动规则见文末的附件1
感悟感想
不出意外,再过三个小时,持续9天的党建答题活动就要顺利结束了,我为什么用顺利而不是用圆满,因为期间确实出现了很多问题,但是这些问题没有影响到答题活动的正常开展。
对于一个答题活动公平公正是第一位的,作为该活动的见证者,我发誓该活动从未刻意改动过用户后台答题得分数据,但是必须承认在用时数据这块,在前期是存在一定误差的。
答题用时的误差是由于用户答题中途退出小程序造成的,如果按照正常的答题流程,答题用时数据是准确的,所以对于中途退出答题的这个场景,在后续的优化环节可以继续推进
项目架构
该小程序开发只用了两天时间,小程序开发采用了云开发,原生框架,未引入任何界面组件库,为保证活动顺利进行开通了按量付费服务,云开发按量付费服务如何开通具体见附件3
用到的知识点汇总
1、云函数
这次开发小程序非常依赖云函数,一共创建了13个云函数,其中有定时触发器执行的,有在小程序端调用的。
其实小程序采用云函数,有以下好处
(1)云函数如果逻辑有问题,可以及时修复,不需要审核,这一点至关重要,因为我做答题活动都是马上就要开始了
(2)小程序调用云函数,我们可以通过云函数的日志,监控到具体的调用参数,响应信息,不需要再主动打日志信息
2、定时触发器
该知识点在小程序的两个场景有用到
(1)主要用在累计排名的计算上,目前累计排名是通过云函数在整点计算,每天计算24次
(2)修复用时不对齐的问题,在每个整点的59分执行
https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/functions/triggers.html
界面截图
1
相关文章
如何开通云开发CMS内容管理系统? - 微信开放社区 https://developers.weixin.qq.com/community/develop/article/doc/0000cab5cd87b8bca68a3f23253413
党建答题活动小程序复盘回顾? - 微信开放社区 https://developers.weixin.qq.com/community/develop/article/doc/000a4296148320f6b68a852c851413
微信答题小程序用时计算逻辑梳理? - 微信开放社区 https://developers.weixin.qq.com/community/develop/article/doc/0002c8bd344510fbe38a2747d51813
党建答题小程序复盘回顾系列二? - 微信开放社区 https://developers.weixin.qq.com/community/develop/article/doc/000624fdef4c68b1199a245e851013
字符串转日期大坑请绕行? - 微信开放社区 https://developers.weixin.qq.com/community/develop/article/doc/0002a6e8188a48f4369aefcf15b013
云函数默认执行超时时间? - 微信开放社区 https://developers.weixin.qq.com/community/develop/article/doc/00026a51780f2089599a33b3d5b013
本文内容
在社区之前也发过几篇关于答题活动的文章,主要用于记录答题小程序问题修复的一些细节,本文在前文之上做下汇总。
问题
按照我想到的问题顺序记录
1、答题用时数据没有对齐,造成排序的时候错乱;
2、答题结束时可以重复提交导致,部分用户有两次有效答题记录;
3、其他样式问题,比如排名不对齐
4、苹果手机关于字符串转日期的兼容性问题
5、累计排名,分钟超过100时,前面未补0,导致排序错乱,该问题跟问题一类似,只是发现的较晚
6、excel文件的题库转json时,会将日期转成某时间戳,具体见附件4
7、定时触发器执行云函数超时,导致累计数据里面确实很多用户的答题数据
后续优化
1、总排行棒实时展示
2、答题界面优化,如果答对,在选项后面标记对勾符号,答错标记×符号
3、增加系统自动导出报表功能
4、用户中途退出答题
5、倒计时
总结
通过这一次党建答题活动真的收获非常多,也投入很多时间,为以后做类似答题活动积累了宝贵的经验,希望从这次活动中,让产品更上一个层次
备注
我给这个小程序开通过云开发CMS内容管理系统,我承诺在活动结束之后,会把账号CMS系统的账号、密码对外开放,给不熟悉CMS的同学参观、学习
附件1
附件2
活动发放奖励(该图截图自另一个同时段答题活动)
附件3
附件4
附件5
完美收官