智慧江大APP的设计开发研究报告

2020-12-29 11:17吴影梅增鑫徐俊华
科学大众 2020年7期
关键词:开发技术校园互联网

吴影 梅增鑫 徐俊华

摘 要:文章针对当前移动端软件环境技术、互联网的技术发展以及最新的移动互联网开发技术进行研究,阐述开发一款专属校园APP的经历。该APP基于Android Studio平台开发,展现最终成品的演示,并对未来移动开发技术的展望。

关键词:APP;开发技术;校园;互联网

1    APP设计需求

大学生对于各种信息平台的接受度和依赖度非常强,但是市面上的生活服务类应用软件鱼龙混杂。针对大学生的需求、以大学生的利益为基本出发点来提供信息、方便大学生学习生活的应用软件还少之又少,大学生日常学习、查询课表、吃喝玩乐、交友互动等都逐渐互联网化,于是,针对大学生群体的校园APP孕育而生。本项目开设江苏大学校园、个人信息查询、课堂学习、交友、生活服务等功能,既能辅助教师课堂教学,又能帮助学生课后学习,还能给校园生活增添乐趣,便捷校园生活,同时还丰富了安卓软件生态环境。

2    项目及其功能介绍

此APP的基本功能是将原本使用Web端的服务如“江苏大学的教务系统网站”以及“综合门户网站”的访问请求进行分析,获取转换相应的接口,实现模拟登录后通过对于功能的get/post请求来实现数据的来源。该功能最重要的是数据来源,基础功能如查课表、成绩、学校公告等,是通过http请求学校网站,将数据转换成移动APP中view上具体元素的内容来实现。

2.1  登录界面

用户可以实现学校学号和密码登录,也接入了微信开放平台、QQ开放平台和新浪微博开放平台,可以支持移动应用支持QQ帐号、微信、微博登录、分享到QQ、微信等功能。用户首次通过第三方应用登录之后,绑定学号,后续即可使用第三方账号登录,来获得更好的用户体验。登录界面如图1所示。

2.2  菜单界面

菜单界面是个静态资源,使用简单的Listview完成界面的布局编写,每一个Listview元素采用线性布局,加载菜单的步骤在setContainView事件中完成。其中,图标资源使用的是阿里矢量图标库的资源,菜单界面如图2所示。

2.3 个人信息

个人信息界面查询的是用户的基本信息,信息通过http请求提取自学校相应的网站,用户可以操作的内容是头像更改,头像保存在APP服务器上,界面实现了沉浸式状态栏,是目前绝大多数APP都实现的规范。个人信息界面如图3所示。

2.4  课程表查询界面

信息查询界面主要通过使用Jsoup解析工具模拟登录,并自动获取用户的课程信息,Jsoup解析模拟请求得到的html页面的表格信息,实现封装成Course对象,得到课程的集合,传递给对应的布局去适配加载。整体布局采用的是相对布局界面,方便各个元素位置的变动,实现课程表一键查询功能,并支持往年课表查询,自动高亮当前信息,点击对应的课程可以查询课程详情,长按课程表格处可以实现添加课程和删除课程的功能。个人课表界面展示如图4所示。

使用的jsoup gradle依赖导入implemen-tation group:‘org.jsoup, name:jsoup,version: ‘1.11.2课程表的单个课程使用Material库的cardview布局implementationcom.android.s- upport:cardview-v7:28.0.0

用户初次查询课表后将自动将课程信息存放到SQllite数据库中,实现数据的持久性,提高下次查询速度。

2.5  成绩查询界面

成绩查询界面采用了CollapsingToolbar-Layous设计,来自于DesignSupprot库:gr-adle依赖:implementationcom.android.supp- ort:design:24.2.1使用该布局实现了可折叠式标题栏,向下滑动时上面的布局实现错位折叠效果,用户的滑动操作体验得到提高,同时,使用安卓的Paint和View类实现了自定义饼状图,可以很直观地看到当前学期的课程成绩分布。在recyclelayout的最下方,统计了学生的学分总和和平均绩点。成绩查询功能展示如图5所示。

2.6  论坛功能

由于论坛功能需要处理的问题很多,于是使用了Discuz论坛框架去搭建完成,在框架的基础上增加分区,优化UI布局,实现论坛发布功能。使用该框架要使用PHP+MySQL环境,项目地址https://www.discuz.net/。

2.7 表白墙功能

表白墙的服务器端采用PHP+MySQL完成,可以实现内容的发布和管理员对内容的管理,采取混合开发模式完成,使用安卓WebView套壳Web界面,实现开发的高效和未来实现跨平台做好准备。表白墙展示如图6所示。

3   前景预测

一款APP的开发经历使得理论知识得到了更好的强化,但是成为一个合格的移动端开发者还远远不够,未来这款APP的功能增加和完善将使用更加丰富的技术,从而不断提升自己的能力。

4   结语

以现在的移动端开发技术来说,由于移动端现在具有两大平台,实现两个平台的开发需要大量的人力,目前使用Flutter前端框架可以實现一份代码自动生成多平台的应用,使用Flutter框架不仅可以实现高效开发,并且使用体验接近原生效果,用户几乎感觉不到差别,这也许是未来该APP的转型方向,随着版本的迭代更新,其功能会越来越完善。

[参考文献]

[1]郭霖霖.第一行代码Android[M].北京:人民邮电出版社,2014.

[2]何瑞君.Flutter从0到1构建大前端应用[M].北京:电子工业出版社,2019.

[3]李刚.疯狂Java讲义[M].北京:电子工业出版社,2008.

猜你喜欢
开发技术校园互联网
新时期计算机软件开发技术的应用及发展趋势
计算机软件开发技术及应用
校园的早晨
春满校园
油田低渗透油藏开发技术研究
从“数据新闻”看当前互联网新闻信息传播生态
互联网背景下大学生创新创业训练项目的实施
以高品质对农节目助力打赢脱贫攻坚战
IT书吧