“智慧校园行”手机APP 开发及推广
2016-01-09蔡海杰刘卓崔忠伟黄茂汪俊超陈
蔡海杰+刘卓+崔忠伟++黄茂+汪俊超+陈盼+胡梦
摘要:基于iOS移动开发平台,采用OC语言,SQLite数据库设计一款“智慧校园行”手机APP,为贵州师范学院全校师生提供一个更方便的校园信息获取平台。
关键词:iOS;校园APP;信息发布
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2015)30-0008-02
随着信息化时代的不断进步以及今年来智能手机的不断发展,在高校更是拥有着更大的覆盖率,现在绝大多数的高校学生与老师都已使用智能手机,人们逐渐习惯了使用APP客户端上网的方式。所以高校建立专属的APP成为大势所趋,据调查截止到2015年苹果手机iOS在中国市场份额达25.4%。故笔者所在的团队看准这个趋势合作开发一款为全校师生都能使用的校园信息获取的手机版APP。
1 手机APP校园客户端开发的意义
“智慧校园行”是对教学环境、教学资源和教学活动上的拓展,有效的改善现有学习和生活模式,同时通过移动手段更有利于提高校园支撑服务的管理效率和管理水平,优化校园服务的质量,实现校园生活的移动化。手机APP校园客户端的开发能够使校园数字化建设和发展从一个静态的体系逐步转变成一个动态和静态相结合的智能化全方位网络平台系统。“智慧校园行”手机APP就是一次尝试,试图对教学环境、教学资源和教学活动上的拓展,有效的改善现有学习和生活模式,同时通过移动手段更有利于提高校园支撑服务的管理效率和管理水平,优化校园服务的质量,实现校园生活的移动化。
2 相关技术
2.1 xcode
xcode是苹果公司向开放人员提供开发Mac电脑、iPhone手机、ipad平台应用的开发工具(非开源),只能运行在Mac操作系统下。Xcod的开发语言为objecti-C是苹果公司专门为xcode退出的一门语言,是基元C语言的一门高级语言。在xcode中装有ios sdk 可以使用iPhone、ipad、iPodTouch等模拟器进行调试。
2.2 SQLite
SQLite,是一款轻型的数据库,无需安装和管理配置,但其支持的SQL不逊色与其他的开源数据库。对应手机APP来说小巧是必备的,所以采用这款既小有好用的开源数据库。而在xcode在想要使用SQLite数据库只需要加载sqlite3。
3 系统平台设计
平台总体架构如图1所示。
图1 平台总体架构图
新生入学:整合新生入学时间、学费、办理入学手续所需的材料以及发生意外情况时可以求助的电话等等。
校园通知:用来发布校园近期或者将要发生的活动,让每个同学的业余生活都能更加丰富。
师生交流:老师和学生之间的交流平台,让那些不敢和老师直说的话也能让老师知道。
招聘信息:用来发布校园内的岗位的发布,例如教师助手等。
生活服务:将统计一些校园内的生活信息,例如又开了什么新的小吃等等。
离校须知:将大四的离校手续细节进行细化,让大四的学生可以有条理的完成他们的离校手续。
校园美景:收录校园的各种美景。
4 系统实现
“智慧校园行”手机APP由iOS移动终端、SQLite数据库以及后台的服务器组成。iOS移动终端作为该平台的前台,主要作用是作为移动端代替传统的PC终端;SQLite数据库主要用于存储客户端上显示的数据,在客户端每次进入是通过网络与后台的服务器进行数据的更新。iOS客户端与数据库的交互,主要是通过sql语句的增删查改。服务器主要负责录入需要更新的数据用以对SQLite数据库的更新。iOS客户端与服务器端的json数据交互,主要是通过json形式的数据交互,就是json的写入和解析,其作用是为了更新SQLite数据库中的数据。
4.1 iOS客户端实现
iOS客户端请求服务器的URL地址,将服务器端返回的JSON数据进行解析,然后将解析玩的数据放入建好的相应Model模型当中。接着根据不同的功能,将相应的模型放在不同的View上面,或者将得到的数据内容更新到我们的数据库中。 主要代码:
//创建URLRequest
NSMutableURLRequest *URLRequest = [[NSMutableURLReques talloc]initWithURL:finalURLcachePolicy:NSURLRequestReloadIg noringLocalCacheDatatimeoutInterval:SR_TIME_OUT_INTERVA L];
[URLRequestsetHTTPBody:[HTTPBodyStringdataUsingEnco ding:NSUTF8StringEncoding]];[URLRequestsetHTTPMethod:@"P OST"];
iOS客户端对SQLite数据发起访问,将从数据库中查询到的数据转为NSString类型,然后存储在一个NSMutableArray中,根据不同功能的UI控件的需求从NSMutableArray中提取所需的数据主要代码:
NSString *query = @"SELECT ID, FIELD_DATA FROM NEWS ORDER BY ROW";
sqlite3_stmt *statement;
int result = sqlite3_prepare_v2(database, [query UTF8String], -1, &statement, nil);
4.2 服务器端实现
服务器根据所需功能对本地的数据进行更、删、查、改等不同的功能,在主页messege.jsp中点击需要的功能并进入相应的页面,例如在修改页面update.jsp中在所需修改数据的文本框中修改相应的数据然后点击保存即可将数据更新到服务器端的数据库中,在通过iOS客户端与服务器端的交互修改SQLite数据库的数据从而修改iOS客户端上显示的数据。
4.3 各个模块实现
在 iOS平台中,每个用户操作界面为一个 .m和.h文件,在.m中是进行给个UI控件的声明以及所需要的各个方法的声明,在.h文件中是进行对各个UI的初始化以及各个声明方法的实现。在.h文件的方法中调用NSURLConnection对象向服务器提交服务请求,获得结果。设计时应注意三个问题:
1)创建一个NSURL对象,设置请求路径(设置请求路径)。
2)传入NSURL创建一个NSURLRequest对象,设置请求头和请求体(创建请求对象)。
3)使用NSURLConnection发送NSURLRequest(发送请求)。
5 结束语
“智慧校园行”手机APP实现了高校师生特别关注的问题集中在一起通过移动终端展示,解决了传统电脑携带的不方面导致信息的传递的不及时。该App已经在iPhone手机上经过测试实现了相应功能并且能正常运行,为用户提供方便快捷的校园通知,师生交流等等的信息传递。也能够为更多的手机APP校园客户端提供设计参照。
参考文献:
[1] 李旭红. 长江大学“掌上校园”APP系统研发与运营研究[J]. 科技创新, 2014(9): 35-37.
[2] 刘宏磊, 李一鸣. 掌上迎新系统的设计与实现研究[J]. 中国教育信息化, 2012(3): 57-60.
[3] 孙净字, 李澈, 张震, 等. 高校校园APP发展现状初探[J]. 数字与出版, 2014(6): 84-85.
[6] 陈兆良, 王千祥, 梅宏,等. 面向对象领域设计中的变化性处理[J]. 电子学报, 2001(11): 1486-1490.
[7] 华建祥. 基于Android平台的校园信息查询系统客户端设计与实现[J]. 软件导刊, 2014, 3(3): 101-103.