教学网站app端的设计与实现

2018-01-01 23:02胡青萍
科学与财富 2017年30期

胡青萍

摘要:传统教学一般是以面对面的方式进行授课,这种授课方式存在着时间规定、课程资源有限、不可重复学习等缺点。本文设计实现了一种基于Android平台的教学网站App,能够让用户自主选择学习时间,进行在线学习,能够很好地弥补传统教学方式的不足。系统主要包括数据库的设计、云服务器和Android客户端的设计开发三个模块。数据库存储在云服务器端,相关的数据库操作都会提交到云服务器端进行,从而使得App客户端具有高效处理速度。

关键词:Android、教学App、Android Studio

0、引言

随着互联网的发展,智能手机特别是安卓手机广泛被使用,基于Android平台的教学App能够很好的解决上述问题。客戶端在Android手机上安装教学App,登录后,就可以选择喜欢的课程进行学习。这种便捷、高效、可自主选择学习时间与课程的教学App会是一个发展的方向,将来一定会改变传统的教学方式[1]。

1、系统功能需求分析

1.1 功能需求

教学App是一款用Android Studio[2]开发的基于Android平台进行高效学习的手机应用软件。客户端应该具有用户进行注册、登录,浏览所有可学习的课程,关注课程,课程资源下载,社区进行交流分享,收藏文章,个人设置等功能,为了更好的服务用户,应用还设置了意见反馈,用户可进行意见反馈,以便完善教学App。

1.2性能需求

1)易用性:风格统一的界面设计,友好的交互设计,简单方便的操作步骤;

2)稳定性:App运行时要求高效、稳定、可靠,内存消耗与cpu消耗小;

3)兼容性:Android碎片化;

4)可拓展性:App设计时应考虑扩展问题,以便将来完善与拓展。

2、系统总体设计

教学网站App总共包括三个部分:云服务器、Android客户端以及数据库设计。

2.1云服务器端

系统的服务器使用的是Bmob云服务器。管理员通过登录应用的账号进入系统的控制台,可以在控制台对所有数据进行数据的增删改查。

2.2Android客户端

教学App采用B/S模式,用户与App的交互界面进行交互,同时与云服务器的数据进行数据交互。云服务器向Android客户端提供数据接口方法以便用户进行数据操作。在Android端App的开发过程中,利用XML进行界面设计[4],使用include 进行界面复用,优化布局,功能模块使用Activity、Fragment实现与用户的交互App通过Gson、Json与云服务器的数据交互[3]。 主要功能如图3所示。

2.3 数据库设计

数据库中有7张表,各数据表的关系说明(E-R图)如图1所示。

3、系统实现

3.1数据库的建立与连接

登录应用的账号到控制台,在控制台界面手动添加以上数据表。或者在程序中创建对应数据表的实体类,程序首次运行会自动在云服务器创建相应的数据表。

3.2云服务器的设置

创建一个应用,得到相应的 Appkey,以便在程序中使用[4]。可以手动在云服务器创建数据表,添加测试数据。

初始化Bmob SDK:Bmob.initialize(this, "6672f54e9508f8fad63daa61f2b59c9c");

3.3Android App的设计与实现

1)学生用户登录注册

设计思想:学生用户启动教学App时,进入登录页面LoginActivity,输入账号和正确的密码点击登录按钮,通过身份验证后进入主页面MainActivity。否则,会提示登录失败。

点击顶部工具条的右上角的“注册”按钮,跳转到注册页面SigninActivity。输入用户名和两次密码即可注册。注册会检查用户名是否存在,如存在会提示用户更改用户名。

2)课程相关操作

设计思想:当学生用户成功登录后,会自动跳转到主页面(MainActivity),主页面上为一个ListView显示所有课程。而一个ListView就需要一个适配器与一个数据源,数据源就是从Bmob后端云传递过来的课程集合。

用户在浏览课程后,可以点击任意一门课程,进入课程详情页面(CourseItemActivity),首先会检查用户是否已学习过该课程,在课程详情中还可以查看该课程的详细情况,然后可以选择是否可以对课程进行学习或下载课程资源。

3)文章相关操作

用户进入社区部分时,会显示社区里已有的文章。用户可以点击自己喜欢的文章,进入文章详情页面(ChatPostItemActivity)。在这里可以查看文章的作者,发表时间,内容以及相关评论。用户可以文章进行点评、收藏。此外,用户可以发表自己的文章,与其他用户进行交流与分享。

4)个人设置相关操作

设计思想:用户切换到个人设置时,可以查看自己的收藏的课程,收藏的文章以及自己发表的文章。此外还可以修改个人的信息,清理缓存,检查版本更新等功能。个

4、测试

4.1功能测试

安装教学App到Android手机上,进行功能测试,结果为所有功能均能正常使用。

4.2兼容性测试

Android客户端兼容性测试通过云测试平台Testin[5](Testin是全球最大的移动游戏、应用真机和用户云测试平台)进行,通过对市场占有率较高的50款安卓设备进行测试,结果为兼容性全部通过。

4.3安全性测试

Android客户端的安全性测试在腾讯手机管家进行在线测试,测试结果为安全。

这里针对APP的功能、兼容性以及安全性等三个方面进行测试,测试结果反映运行功能稳定、兼容性好,有较好的安全性。

5、总结

本文设计的App能够为学生提供高效、自主选择学习时间与课程的学习方式,且所有的数据处理都通过云服务器进行处理,提高应用的处理速度与健壮性。本应用已投入使用,运行效果较好。

参考文献:

[1]李云飞,王敏娟等.移动学习系统及其相关学习模式[J].开放教育研究,2012(01)

[2]方欣,杨勃等.Android Studio应用开发-基础入门与应用实战[M].北京:电子工业出版社,2017:006

[3]黄彬华.Android5.X App开发实践-使用Android Studio开发[M].北京:清华大学出版社,2016:305-312.

[4]https://docs.bmob.cn/data/Android/a_faststart/doc/index.html#获取应用密钥和下载SDK

[5]https://www.testin.cn/business/compatible.htmendprint