基于Android 平台的校园社团管理软件设计与实现

2020-12-28 01:46:46石俊豪赵良军陈政扬周杨博赵玖琦郑斌
现代计算机 2020年31期
关键词:干事信息管理社团

石俊豪,赵良军,陈政扬,周杨博,赵玖琦,郑斌

(四川轻化工大学计算机科学与工程学院,宜宾 644000)

0 引言

移动应用的快速发展,结合利用信息和互联网平台使得各种行业的相关服务都发生了根本性的变革。“互联网+”的兴起使得这种结合变得更加简便与快速。作为教育重要载体的高校应当顺应“互联网+”时代潮流,推动传统高校向现代化智慧校园转变,真正提高智慧校园的科技水平以及服务能力,为更多的师生提供优质的教学、生活等方面的服务。在大学的各种学生组织中,大学生社团是以提高学生综合素质、科研创新能力,培养高素质新型社会人才为目的的学生组织,是高校课堂教育的补充和延伸,大部分学生生涯不可替代的组成部分[1]。

目前社团的招新方式大多靠着线下的“百团大战”活动和线上的QQ 空间发布等进行宣传招新,利用QQ群等即时聊天工具进行管理。但传统的社团招新、宣传手段远远不能满足学生社团管理的需求,往往导致社团招聘不到素质合格的学生,而学生也不能如愿以偿的加入合适的社团[2],同时面对大规模的社团信息管理,传统手段也不能满足需求。

通过设计一款基于Android 平台的校园社团管理软件来简化学生社团管理流程,提供便捷的社团信息推送服务。为社团管理人员提供系统来管理,为一般用户提供获取信息和交流的渠道。

1 系统总体架构设计

1.1 需求分析

针对社团管理存在的需求,结合当下存在的校园类软件。系统待解决的问题主要有3 点:

(1)社团信息以及社团活动信息的发布与及时推送的服务需求

(2)社团报名、社团活动报名、社团干事竞选等报名申请,社团资料与人员变更、社团各类信息导出等社团管理需求

(3)用户与用户、用户与管理人员、管理人员与管理人员之间的交流需求

1.2 系统总体结构设计

软件功能是建立在需求分析之上得到,校园社团管理软件需要完成的功能子模块主要有4 个:管理模块、报名模块、通知模块、查询模块,各个模块有若干不同的工具类构成。各个工具类以组件的形式存在。系统功能模块图如图1 所示。

图1 功能模块图

软件客户端通过因特网向Server 端发送请求获取信息,Server 端获取到客户端的请求将参数通过Web实例调用相应的方法进行逻辑处理,然后根据结果对后台数据库进行增加、删除、修改、查找,并返回结果进行响应[3]。网络模式示意图如图2 所示。

图2 网络模式示意图

2 功能模块设计

2.1 管理模块设计

管理模块包括信息管理、权限管理、经费管理。信息管理面向用户和社团管理人员分为个人信息管理和社团信息管理,个人信息管理用户可以自行更改自己的个人信息,预设的申请信息的自定义信息,可以修改自己的个人标签来接收软件的推送信息,社团信息管理是社团管理人员对于已加入社员的用户信息维护,发布新的活动信息、修改活动信息等;权限管理面向社团管理人员,其可以通过这一模块使得高权限人员对低权限人员的权限进行更改,是整个社团权限的基础;经费管理面向社团,管理对象包括:社团入会费用、社团基金和社团赞助等基金,提供经费收入、支出、明细查询的功能,是社团管理透明化的保证。

2.2 报名模块设计

报名模块包括社员申请、干事审核。社员申请包括活动申请和入会申请,活动申请是用户通过在线的方式提交自己的申请信息,这时系统需要提供申请模板,统一申请信息,转由干事审核功能进行审核。干事审核面向社团管理人员,为其提供一键化的操作来快速完成审核,提供接口能够使得审核后导出所有的审核信息方便信息归档。

2.3 通知模块设计

通知模块由活动通知和申请反馈组成。活动通知是系统根据用户预设的个人兴趣与统计得到的用户活动参与情况,通过自动地对新发布的活动进行归类,按类型向不同的用户进行活动信息推送,推送过程中保证推送的准确性和及时性。申请反馈面向所有用户,是各类申请结果的即时反馈。

2.4 查询模块设计

查询模块有社团信息、活动信息、干事信息、申请进度四个主要功能。社团信息包括所有社团的从属关系、组织架构、类型等总体信息,也包含社团名、社团联系方式、活动数、评价等详细信息;活动信息是由社团发布的活动的详细资料,包括时间、地点、介绍、联系方式、图片等,方便用户了解当前和历史的各类活动,也可以为社团干事提供活动举办的经验;干事信息是用户能够通过系统查询到各个干事的基本信息,包括姓名、所属关系、联系方式的;申请进度查询是为报名参加活动的、填写了社团入会申请的、填写了干事竞选申请的用户提供实时的进度查询和提醒服务,连通用户与审核处理人员。

3 软件实现

系统的主要编程语言是Java。开发平台是Windows 10 操作系统,客户端开发软件使用Android Studio,服务端开发软件使用Eclipse。后台服务器搭载CentOS,Web 容器选用 Tomcat,后台数据库选用MySQL。

软件设计语言采用Material Design。Material De-sign 是由Google 推出的全新的设计语言,这种设计语言为手机、平板电脑、台式机和“其他平台”提供更一致、更广泛的“外观和感觉”。其目标是创造一个将经典的设计原则和科技、创新相结合的设计语言。

3.1 主界面实现

主界面使用DrawerLayout+ViewPage。DrawerLayout 是抽屉布局,允许从窗口的一个或两个垂直边缘拉出交互式“抽屉”视图,可以用来添加一个Navigation-View,在NavigationView 中添加多个按钮来提供功能。使用两层ViewPage 保存每个界面实现左右滑动操作。第一层ViewPage 与底部BottomNavigationView 绑定并解除滑动切换而使用底部栏点击切换;第二层ViewPage 放于第一层的ViewPage 里边实现滑动切换。

列表展示采用RecyclerView。RecyclerView 标准化了ViewHolder,可以轻松实现基础ListView 实现不了的样式和功能,如:可以通过布局管理器LayoutManager 可控制Item 的布局方式,可以通过设置Item 操作动画自定义Item 添加和删除的动画,也可以通过设置Item 之间的间隔样式,自定义间隔。因此Recycler-View 只用新建适配器填充数据,设置布局样式就可以使用[4]。最终主界面的实现效果如图3 所示。

图3 主界面效果图

3.2 信息展示界面实现

信息展示界面使用AppBar+NestedScollView。App-Bar 是Android5.0 的加入的重要动画效果,具有非常绚丽的UI,通过内容驱动,可以减少页面的访问,更加便捷的传递主题思想。在AppBar 里面嵌套一个动态生成的ViewPager 即可实现图片的轮播图用来展示需要展示的图片信息。NestedScollView 是一个支持嵌套滑动的ScrollView,通过嵌套滑动机制解决了传统Android 事件分发无法共享事件这个问题。FloatingActionButton 控件是一个悬浮按钮,可以悬于AppBar 之上,用来实现报名申请。

图片的加载使用Glide 库。它是一个Android 上的图片加载和缓存库,其目的是实现平滑的图片列表滚动效果。可以通过方法设置图片加载的位置、大小、占位图、缓存策略等加载效果。主要代码如下:

信息展示界面最终的效果如图4 所示。

图4 信息展示界面效果图

3.3 活动发布界面实现

活动发布界面使用NestedScollView。在View 中加入各类定制化的控件,如带统计的输入框、图片选择、时间选择等。其中图片选择使用Matisse,它是知乎的一个开源项目,能够实现Android 本地图片、视频的选择并兼有优雅的界面和不错的性能。图片选择需要动态向系统申请读写权限。选择图片后通过回调的方式将图片压缩后渲染到一个RecyclerView 里面显示。

点击发布活动按钮后将压缩的图片与需要发布信息一起通过Post 的方式发送到服务器进行响应。网络请求框架采用OkHttp,它是一个高效的HTTP 客户端,支持HTTP/2,允许所有同一个主机地址的请求共享同一个Socket 连接,支持透明的GZIP 压缩减少响应数据的大小。能够实现项目的所有网络需求。活动发布界面最终的效果如图5 所示。

图5 活动发布界面效果图

4 结语

本文设计并实现了基于Android 平台的学生社团管理系统。界面友好、操作简单,能够满足社团管理的基本需求,提高学生社团的运转效率,使得校园生活更加便利。具有一定的代表性。但软件的生态不够完善,用户基数小。希望能够在之后推广到更多学校,完善后台数据库,为用户提供更完善、更舒适的体验。

猜你喜欢
干事信息管理社团
缤纷社团
争做想干事、能干事、干成事的人大干部
公民与法治(2022年5期)2022-07-29 00:47:32
造价信息管理在海外投标中的应用探讨
评《现代物流信息管理与技术》(书评)
最棒的健美操社团
军事文摘(2017年16期)2018-01-19 05:10:15
K-BOT拼插社团
中学生(2016年13期)2016-12-01 07:03:51
在高速公路信息管理中如何做好QC小组活动
为担当者担当,让干事者无忧
干事创业要“五劲”共使
面向Web的BIM三维浏览与信息管理