一种基于Android的智慧校园平台的设计与实现

2017-04-12 00:35邢玉清张二丽耿秋鹏
关键词:服务器端公告客户端

邢玉清, 张二丽, 耿秋鹏

(1.河南农业大学 理学院,河南 郑州 450002; 2.郑州财经学院 信息工程学院,河南 郑州 450044)

一种基于Android的智慧校园平台的设计与实现

邢玉清1, 张二丽2, 耿秋鹏1

(1.河南农业大学 理学院,河南 郑州 450002; 2.郑州财经学院 信息工程学院,河南 郑州 450044)

设计了一种基于Android的智慧校园平台.该平台的开发分为两个部分:客户端基于Android,使用Android Studio开发,利用Genymotion运行测试;后台服务器端使用PHPStorm开发,利用Apache 和MYSQL运行测试.该平台不仅实现了客户端的用户注册和登录、新闻浏览、个人中心、课程讲座和通知公告,还实现了客户端对应的服务器端的管理员登录、新闻管理、用户管理、课程管理和通知管理.平台具有界面友好,操作便捷,兼容性强,便于后续开发和维护等特点,可以方便师生进行移动学习,促进学校信息化的建设.

移动学习;Android;智慧校园

0 引言

随着移动互联网的大力发展,无线WIFI和4G网络的普及,各种基于移动互联网的应用也日渐增多.大学生的思维方式、学习方式和生活方式也随之发生了极大改变.手机不只是通信工具,也成为学习和娱乐的工具,80%以上的大学生使用的是基于Android系统的智能手机.现在的学习可以通过使用移动设备在任何时候任何地点学习,实现个人与社会知识建构的过程,出现了移动学习(Mobile Learning)的概念.所谓移动学习是指学习地点不再局限于固定的位置,而是可以实时变化的,其中移动不仅是指变化的意思,同时也是指通过移动互联网这种方式[1-4].

在此背景下,移动智慧校园平台应运而生.“智慧校园”这个概念伴随着国家“互联网+”教育模式的发展,越来越多的学校已经向数字化校园、智慧校园迈进了,移动学习是智慧校园发展的必然.移动智慧校园平台是利用现有的WIFI和4G网络技术开发出的移动校园应用,它能方便广大师生进行学习和生活.本文提出的一种基于Android的智慧校园平台的设计与实现,是以移动学习为目的而开发的移动应用程序.客户端

图1 智慧校园平台功能结构图Fig.1 Functional structure of intelligent campus platform

采用JAVA语言,利用Android Studio的开发环境进行开发;服务器端基于开源XiaoCms的PHP+MYSQL架构,利用PHPStorm集成开发环境进行开发.

1 智慧校园平台系统总体设计

基于Android的智慧校园平台分为客户端和服务器端.客户端运行于Android智能手机终端使用Apache Http协议进行网络通信.服务器端运行于Web服务器采用Servlet响应客户请求,通过JDBC访问后台数据库,进行数据的存储管理[5-10].

1.1 系统功能结构

基于Android的智慧校园平台功能结构如图1所示.客户端主要包括注册和登录、新闻显示、个人中心、课程讲座和通知公告模块.用户启动程序并注册(第一次使用该应用时注册),登录后阅读国家、城市、学校相关资讯,包括发生在国际上的新闻快讯,学校的教务通知和课堂讲座,在程序中有用户信息、意见反馈、修改密码、关于我们、版本更新、退出登录.服务器端主要包括管理员登录、新闻管理、用户管理、课程管理、通知管理.管理员通过登录后,可以进行新闻管理、用户管理、课程管理和通知管理,另外有消息的推送功能[11].

1.2 数据库设计

结合智慧校园平台系统功能结构,服务器端数据库主要包含用户表、新闻表和管理员表等,如表1~3所示.

表1 用户表

表2 新闻表

表3 管理员表

2 智慧校园平台系统详细设计与实现

在跨平台数据传输中,最常用的两种数据交换格式为XML和JSON.针对移动智能终端的特殊性,在通信过程中要尽可能地提高传输效率.因此,将JSON这种冗余度较小且易解析的轻量级的数据交换格式作为系统数据交换格式[12].

2.1 智慧校园客户端详细设计与实现

在首页中,需要展示出最近的焦点新闻,如图2所示;在焦点新闻中,包括国际新闻、河南新闻、农大公告,如图3所示;在视频课堂中要展示出教学视频的简略信息,如图4所示;个人中心如图5所示,用户进入程序登录后(首次使用该软件的用户需要先注册账号)进入首页,当向右滑动界面时会分别进入焦点新闻、视频课堂、通知公告界面,当点击屏幕右上方的头像图标时进入个人中心.首页上方为可以左右滑动的5张新闻图片,点击图片进入相应的新闻详情界面.首页下方为新闻列表,点击任一条目则进入该条目所对应的新闻详情界面.焦点新闻又分为国际新闻、河南新闻、农大新闻.每个新闻界面显示对应的新闻列表,点击列表中任一条目进入该条目对应的新闻详情界面.视频课堂是显示视频简略信息的界面,界面中将视频简略信息罗列出来,当用户点击任一条目后跳转到播放视频界面,播放相应视频.通知公告界面显示该软件的通知公告,通知公告以列表的形式展示,默认第一条公告信息展开,其他公告具体信息隐藏,点击某一条隐藏的公告,该公告的具体信息显示而其他显示公告具体信息隐藏(即同一时刻只能显示一条具体公告内容),当点击已显示具体公告条目时,具体公告隐藏.

图2 用户首页界面Fig.2 User index interface

图3 焦点新闻Fig.3 Focus News

图4 视频课堂Fig.4 Video classroom

图5 个人中心Fig.5 Personal Center

实现登录功能需要用到LoginActivity界面.该界面首先获取LoginActivity传来的用户账号和密码,然后开启一个线程发送请求到服务器进行验证.若服务器返回登录成功状态时,会通知LoginActivity进行界面跳转,LoginActivity接收到登录通知,就会启动用户主页面MainActivity.在MainActivity中将首页、焦点新闻、视频课堂、通知公告4个Fragment放入到ViewPager中,并加到当前Activity中,其中LoginActivity相关代码如下:

LoginInfo info = JsonParser.ParserLoginInfo(result);

if (info.isResult()) {//登录成功

buttonLogin.setText("登录成功");

FileUtils.StoreName(userName);//存储用户名

FileUtils.StoreUser(info.getContext());

FileUtils.StoredSessionId(info.getContext().getSessionId());//存储用户ID

startActivity(intent);//跳转到主界面

finish();

} else {//登录失败

buttonLogin.setText("登录");

UIHelper.ToastUtil("账号或密码错误");

pwd.setText(null);//设置密码输入框为空

FileUtils.RemovePwd();//移除存储的用户密码

此外,晚明心学盛行,儒家文人多涉入释、道思想,将佛老思想中的空无虚寂的观点引入儒学,淡化物质客观的探索,强调修身养性,以内心的体验和顿悟来把握客体对象,同时又强调人作为主体的决定性和自由性,宣传精神理性的作用。阳明心学中“心外无物”的观念和“顿悟”“渐悟”的修为方法与佛教存在着密切的联系,最终导致了虚无主义和清谈思想的泛滥,晚明文人群体空谈心性,不求治国经邦之术,不寻经世致用之学,深受佛老浸润的思维和炼金求仙的风潮无疑助长了“点金”谣言的产生和传播。

buttonLogin.setClickable(true);//设置登录按钮可点击

};

MainActivity相关代码如下:

viewPager.setOffscreenPageLimit(0); //设置ViewPager预加载

FileUtils.StoreMainIsDestory(false);

fragments = new ArrayList<>();//初始化放Fragments的List

TodayFragment fragment_today = new TodayFragment();//首页Fragment

HotPointFragment fragment_hot = new HotPointFragment();//视频课堂Fragment

Bundle bundle = new Bundle();

bundle.putInt("type", Config.TypeHotPoint);

fragment_hot.setArguments(bundle);

InternalReferenceFragment fragment_internal = new InternalReferenceFragment();

//焦点新闻 Fragment

NotificationFragment fragment_notice = new NotificationFragment();//通知公告Fragment

fragments.add(fragment_today);

fragments.add(fragment_internal);

fragments.add(fragment_hot);

fragments.add(fragment_notice);

ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager(), fragments);

viewPager.setAdapter(adapter);//ViewPager设置适配器

initAction();//初始化点击监听

viewPager.setCurrentItem(position);

initUpdate();//更新

2.2 智慧校园服务器端详细设计与实现

管理员后台登录成功,设置cookie.首先,将用户的ID发送给客户端进行保存.其次,将用户的ID进行md5运算,字符串截取之后发送到客户端作为校验并更新用户的最后登录时间.通过发送伪session,用来进行用户重复登录验证.如果用户PC登录,则选择PC登录次数,进行md5运算后发送给客户端,如果用户手机登录,则选择手机登录次数,md5运算后发送给客户端.由于每次登录成功之后登录次数都会改变,所以选择登录次数作为md5运算数字能保证每次登录都得到不一样的session.最后php echo函数将登录成功之后的信息以JSON的方式发送给客户端.通过新建一个Controller类专门用来处理跟用户有关的请求.

在服务器端,我们可以通过输入用户名和密码,进入后台管理界面,在后台中,根据管理员权限可以对模块的功能、名称、用户等进行相关的管理,如图6和图7所示.

图6 栏目管理Fig.6 Column management

图7 新闻发布Fig.7 News release

3 结束语

介绍了一种基于Android的智慧校园平台的设计与实现,对系统采用的关键技术进行了分析和技术择优,该系统完成了包括客户端和服务端功能整体的详细设计开发和系统实现部署.智慧校园平台系统经过使用白盒测试、黑盒测试、回归测试、安全测试等多种测试表明,系统整体设计满足要求,具有界面友好,操作便捷,易于维护等特点.可以为学校全体师生提供新闻信息、课程学习、在线交流等校园信息服务.当然,智慧校园平台也存在不足之处,一方面适用人群和应用范围太过狭窄,另一方面该系统的细节设计也不够完善,只有经过不断改进,才能得到大面积推广使用.

[1] 刘东明.移动互联网发展分析[J].移动通信,2010(4):59-62.

[2] 余胜泉.从知识传递到认知建构、再到情境认知——三代移动学习的发展与展望[J].中国电化教育,2007(6):7-18.

[3] 李行国.基于3G的移动学习在高校中的运用研究[D].武汉:华中科技大学,2011.

[4] DESMOND K. From d-learning, to e-learning, to m-learning [M].New York: Addison-Wesley, 2010: 36-79.

[5] 邵艳洁. Android操作系统移植及应用研究[D].湖南:湖南大学, 2011.

[6] 熊刚.基于Android的智能手机的设计与实现[D].武汉:武汉理工大学,2010

[7] PALO A. Android takes almost 50% share of worldwide smart phone market [EB/OL].2011-08-01[2016-03-01].http://www.canalys.com/static/press-release/2011/canalys-press-realeass-010811-android-take-almost-50-share-worldwide-smart-phone-market_o.pdf.

[8] 吴亚峰,索伊娜. Android核心技术与实例讲解[M].北京:电子工业出版社,2011:386-388.

[9] FRANK A. Introduction to Android development [EB/OL].2009-06-12[2016-03-01].http://www.ibm.com/developerworks/opensource/library/os-android-devel/index.html?S_TACT/105AGX52&S_CMP=content.

[10]胡伟. Android系统架构及其驱动研究[J].广州广播电视大学学报,2010(4):96-101.

[11]李苑.基于Android移动平台的警务查询系统[D].南昌:南昌大学,2009.

[12]高静,段会川.JSON数据传输效率研究[J].计算机工程与设计,2011,32(7):2267-2270.

Design and Implementation of an Intelligent Campus Platform Based on Android

XING Yuqing1, ZHANG Erli2, GENG Qiupeng1

(1.CollegeofScience,HenanAgriculturalUniversity,Zhengzhou450002,China;2.SchoolofInformationEngineering,ZhengzhouInstituteofFinanceandEconomics,Zhengzhou450044,China)

An intelligent campus platform based on Android is of designed. The development of intelligent campus platform is divided into two parts: client based on Android, using Android Studio IDE and tested by Genymotion; the backstage server, using PHPStorm IDE and tested by Apache and MYSQL. The platform not only realizes the user registration and login, browse news client, personal center, course of lectures and the announcement also achieves corresponding to the client server administrator login, information management, user management, course management and management notice. The platform has friendly interface, convenient operation, strong compatibility, easy to follow-up development and maintenance, etc. It is convenient for students to learn in mobility and promotes the construction of school information.

mobile learning; android; intelligent campus

2016-11-13

河南省高等学校青年骨干教师培养计划项目(2016GGJS-190);河南省大中专院校就业创业研究课题(JYB2017027);郑州市科技发展计划项目(20150514);河南农业大学国家级大学生创新创业训练计划项目(201510466007)

邢玉清(1981—),男,河南周口人,河南农业大学理学院讲师.

10.3969/j.issn.1007-0834.2017.01.007

TP31

A

1007-0834(2017)01-0034-05

猜你喜欢
服务器端公告客户端
Linux环境下基于Socket的数据传输软件设计
如何看待传统媒体新闻客户端的“断舍离”?
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
大枢纽 云平台 客户端——中央人民广播电台的探索之路
沪深一周重要公告
沪深一周重要公告
沪深一周重要公告
沪深一周重要公告
基于Qt的安全即时通讯软件服务器端设计