



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
微信投票平台的设计与实现 学生姓名:张星星 指导老师:鞠小林 南通大学计算机科学与技术学院,软件工程专业,学号 1313032038 【摘要】 :研究了微信应用开发方法。针对微信投票,提出投票规则定义、投票选项设计和 投票结果统计分析的方法, 并应用这些方法设计实现了一个微信投票平台。 基于该平台开展 投票活动设计、发布、微信投票及结果统计的实证研究。结果表明,我们的方法具备较好的 可行性和扩展性。 【关键词】 :微信开发,投票平台,统计分析 1 1 引言引言 近年来,微信应用发展迅速,微信开发成为移动应用开发的热点之一。微信公众平台提 供了一种新的信息传播方式和强大的业务服务能力,得到海量用户的关注1 , 2。基于微信公 众平台的微信投票活动是提升其关注度, 增加用户数量的主要途径之一。 对比过去的人工投 票方式, 微信投票以简单便捷、 实时统计投票结果以及可以快速分析投票行为和用户等优势 见长。现有的微信公众平台提供的投票系统功能单一,不能充分满足服务号、订阅号举办各 类活动的复杂需求。此外我们调研发现,第三方投票平台虽然可以满足较复杂投票需求,但 是这些平台与微信公众号对接存在一定的困难, 并且这些平台多以盈利为主, 用户的体验度 较差,使用成本偏高1。 为此我们研究提出了投票规则定义、 投票选项设计和投票结果统计分析等方法, 设计实 现了一套基于微信公众号的投票平台。具体贡献如下: (1) 实现对投票用户规范管理。包括用户审核注册,用户信息编辑以及投票用户权限分 配等; (2)投票活动发起。包括对活动内容的设置、图片上传、投票规则定义、投票选项的设 计、投票有效性检测等; (3)微信客户端投票实施。包括投票活动的推广,微信用户投票管理、投票进程跟踪、 投票反馈等; (4)投票结果统计分析功能。 包括对每次投票的时间、 来源 IP 地址记录、 投票排名统计、 投票结果导出等。 2 2 系统系统设计设计 微信投票系统主要实现了三大功能模块即系统用户管理模块、 投票活动管理模块、 微信 用户管理模块。系统的结构如图 1 所示。 图 1 微信投票系统结构 如图 1 所示, 管理员可以对微信用户进行管理。 微信用户在绑定 AppID 和 AppSecret 后 可以对公众号的订阅用户进行管理。 微信用户可以创建投票活动包括对投票主题、 投票选项、 投票规则的编辑, 然后通过微信群发接口将投票链接推送给微信用户。 微信用户接收到投票 链接进行投票,投票数据返回给服务器,投票完成可以查看简单的投票排名信息。用户可以 查看投票结果统计,可以导出 Excel 文件格式的投票结果。 2.1 系统采用技术 微信投票系统实现基于B/S架构, 采用Java Web技术进行设计。 开发环境是基于JDK1.7、 Tomcat7.0、Maven3.9 环境下搭建的 Maven+SSM 框架,数据存储基于 MySQL 数据库管理 系统。 2.2 课题技术路线 1)申请微信公众测试账号 2)配置开发者模式 3)设计微信投票系统 UI 4)实现系统后台代码 5)系统测试与 Bug 修复 3 3 系统系统实现实现 3.1 系统用户管理 只有管理员才可以实施系统用户管理。 该模块起到管理员管理系统用户的作用, 可以对 系统用户进行添加、编辑、删除等操作。管理员添加的用户和注册的用户为普通用户,管理 员可以对用户的账号权限、账号状态、密码、邮箱、手机号和年龄进行设置。管理员可以对 普通用户进行删除或者禁用普通用户的账号。 3.2 投票活动管理 系统用户创建好投票活动, 可以点击推送到微信公众号, 系统调用微信的群发接口将投 票链接推送到公众号订阅用户的微信中, 微信用户在微信客户端直接打开链接进行投票, 投 票数据返回给服务器,系统用户可以对投票统计的结果进行分析并能够导出投票数据到 Excel 文件。 3.2.1 创建投票活动 1. 创建投票主题。主要对投票活动标题、投票活动描述、投票完成显示信息进行设置,文 字编辑使用 kindeditor 控件,用户可以改变字体、大小、颜色以及段落样式,插入网络 图片等。 2. 添加投票选项。系统用户可以动态添加候选项,并设置候选项的显示名称,上传候选项 的图片等。 3. 功能选项设置。主要是对投票页面排版、投票活动的规则和投票有效性进行设置。排版 设置了下拉框选择每行显示两个候选项或者三个候选项;头部图标为投票界面的活动图 片;可以为投票活动设置开始时间和结束时间,这里使用了 timepicker 控件,只有在开 始时间和结束时间内才显示投票按钮即用户可以投票;可以设置是否开启每日 IP 限制, 在打开每日每 IP 一次的选项后, 用户每日只能投一次, 这里调用了 ip138 查询网的 API, 可以查询投票者的外网 IP。还设置了多选和单选的选项解决不同的投票个数需求,多选 可设置最少投票个数、最多投票个数来限制用户选择候选项的个数。设置了是否打开关 注按钮,按钮的文字和链接,在投票界面可以显示投票活动创建的时间以及公众号的关 注链接,可以让用户关注公众号;还可以设置投票模式,只允许关注用户参加模式下未 关注相应微信公众号的用户将不能投票,用户只有关注了相应的公众号,在点击投票链 接时静默授权验证成功才能参与投票,允许所有用户参加模式下所有用户均可投票。 3.2.2 编辑投票活动 编辑投票活动部分与创建投票部分编辑内容基本一致, 在投票候选项的编辑时添加更多 的候选项是在新的页面进行操作。 3.2.3 投票活动发布 投票活动发布部分设计了在系统中打开链接、复制链接或者直接推送到公众号的功能。 推送到公众号功能使用了 Weixin Java Tools 工具调用微信群发接口,实现消息的群发功能。 这里推送的只是文本消息, 由于纯文本消息推送的投票链接是无法点击打开的, 所以在代码 中给推送的链接字符串前后加上、以实现纯文本消息变成链接3。 3.2.4 微信用户进行投票 微信用户在微信客户端接收到系统推送的投票链接,用户打开链接的界面如图 3 所示。 点击链接开始投票界面如图 4 所示,微信用户可以查看投票主题以及目前投票量、访问量 等,可以搜索候选项。添加了滑动验证码防止机器刷票以及其他作弊行为。投票结束可以查 看简单的投票排名、票数、候选项票数占总票数百分比等信息4。 图 3 投票链接界面 图 4 微信用户投票界面 3.2.5 投票结果统计 投票结果统计概览中包括了候选项的投票量、 投票前十名信息、 投票量占总票数百分比, 以及历史总访问量、历史总投票量、今日投票量、今日投票最多的候选项的名称和票数。其 中投票排名信息支持 Excel 文件导出功能。还提供了最近投票记录,记录了最近投票用户的 IP 地址以及地理位置、投票的具体时间以及投票用户所投给候选项的名称,提供了一个查 看更多的投票记录的按钮, 点击可以跳转到投票明细日志部分。 投票明细日志部分记录了该 投票活动的所有投票记录。 此外, 系统提供了投票活动的票数与统计管理, 用户可以清晰地查看所有投票候选项的 排名、编号、名称、票数、票数所占总票数百分比和今日票数。 3.3 微信用户管理 用户在个人信息中绑定微信公众号的 AppID 和 AppSecret 即可使用该模块。该模块提 供对微信公众号的订阅者的信息的查看, 利用微信官方提供的获取订阅者列表和获取微信个 人信息的接口,实现查询公众号订阅用户的信息,包括对账号头像、账号昵称、所在地区、 性别、是否订阅、备注、OpenID 进行查看。 3.4 系统测试 本次测试主要是用户界面测试、功能测试以及数据库测试。从系统用户管理、微信用户 管理到投票活动管理逐一测试。 经测试, 系统界面的美观度和各个模块的功能都达到了预期 的要求。 微信投票平台与微信公众号的衔接也基本实现, 系统会在不断的测试中完善出现的 问题,及时对系统进行维护。 4 4 小结小结 论文针对当前微信投票发展现状和背景以及主流开发技术开展深入的调研, 对微信投票 应用进行了理论和系统的研究, 设计实现了一个实用性较强的微信投票系统。 该系统能够与 微信公众号关联通信, 支持一组自定义的投票规则, 实现了针对微信投票防作弊手段以及投 票结果实时导出与分析。在功能方面主要实现了系统用户管理功能、微信用户管理功能、投 票活动管理功能。 其中主要对投票活动管理功能设计, 完成了创建投票活动、 编辑投票活动、 发布投票活动、 投票结果统计的功能。 在发布投票功能中实现了将投票链接实时推送到微信 公众号的功能,投票的结果导出 Excel 文件,能够满足微信投票平台基本需求。 参考文献参考文献: 1黄楚新,王丹. 微信公众号的现状、类型
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安徽省安庆望江县联考2026届化学九年级第一学期期中达标测试试题含解析
- 2026届重庆市开州集团九年级英语第一学期期末质量检测模拟试题含解析
- 2026届江苏省兴化市广元实验学校九年级英语第一学期期末监测模拟试题含解析
- 全国导游证考试试题及答案
- 2025年应急管理试题库及答案
- 江苏南通市启秀中学2026届化学九年级第一学期期中学业水平测试模拟试题含解析
- 2026届福建师范大第二附属中学英语九年级第一学期期末检测模拟试题含解析
- 甲乙丙三方广告宣传合同范本:大型文化节活动
- 离婚协议中财产分割及子女抚养费用及探望权协议
- 双方协议离婚房产分割及子女抚养教育金保障协议
- 作风建设永远在路上教学课件
- (2025)中小学爱国知识竞赛试题附答案
- 新媒体文案写作教程(第二版)课件 项目五 微博文案写作 课件
- 《水力学》课件-第4章 水动力学基础(二)
- 生活垃圾填埋场环境污染的排查与治理方案
- 人教版(2024)七年级上册生物第一单元第一、二章综合测试卷(含答案)
- (新教材)人教版二年级上册小学数学教学计划+教学进度表
- 2025年版浙江省劳动合同模板
- 2025年广东中考道德与法治试题解读及答案讲评课件
- 孕产妇情绪管理课件
- 光伏施工安全管理方案
评论
0/150
提交评论