Android云存储客户端应用开发能力培养的 .教学设计 口柳州铁道职业技术学院 罗耀军胡 玲任硕果 【摘 要】本文从openstack Swift服务搭建过程、命令 学完成以后,学生再独立复习巩固地操作一遍。 运用、应用模块开发三方面对Android ̄存储客户端应用开发 (二)提高搭建过程中的配置能力 能力培养进行教学设计,以促使学生在了解和掌握云存储服务 OpenStack Swift的搭建和使用的前提下,能够按移动客户的需 求,开发移动客户端应用项目。 教师在演示单节点的Switf ̄务搭建过程中,对一些配置会 进行说明,但还不够。如果能通过抓屏软件把服务搭建过程中 的配置说明制作成“可操控的视屏方式”的演示文件,在运行 中运用“暂停”“继续”按键,制作讨论式的学习配置说明,这 样学生可以更好地复习巩固Switf服务搭建过程中的配置说明, 提高学生服务搭建过程中的配置能力。该视频文件若能有手机 版,效果会更好,学生不仅能在教室的电脑上跟随学习,还能通 过手机版随时随地地复习。 【关键词】云存储客户端开发能力培养教学设计 【中图分类号】G【文献标识码】A 【文章编号】0450—9889(2017)04C一0189—03 早在2006年3月,亚马逊首先提出了弹性计算云服务,2006 年8月9日,谷歌首席执行官埃里克・施密特在搜索引擎大会首 次提出“云计算”的概念。OpenStack是一个由NASA(美国国 二、开展0penStack Swift/lE务命令使用教学。提高学生 命令运用能力 我们知道,API(Application Programming Interface,应用 程序编程接口)是一些预先定义的函数,目的是提供应用程序 与开发人员基于某软件或硬件得以访问一组例程的能力,而又 无需访问源码,或理解内部工作机制的细节。Swit通过Prfoxy Server向外提供基于HTTP的RESTJ]t务接口,对账户、容器和对 家航空航天局)和Rackspace合作研发并发起的, ̄AApache许 可证授权的自由软件和开放源代码项目。OpenStack ̄持几乎所 有类型的云环境,项目目标是提供实施简单、可大规模扩展、丰 富、标准统一的云计算管理平台。OpenStack通过各种互补的服 务提供了基础设施ePBE务(IaaS)的解决方案,每个服务提供 API以进行集成。OpenStack包含Nova和Switf两个主要模块, 前者是NASA开发的虚拟服务器部署和业务计算模块;后者是 Rackspace开发的分布式云存储模块,两者可以一起用,也可以 分开单独用。在OpenStack中,Swift: ̄要用于存储虚拟机镜像, 用于Glance的后端存储。在实际运用中,Swift的典型运用是 网盘系统,代表是“Dropbox”,存储类型大多为图片、邮件、视 象进行CRUD等操作。如何掌握OpenStack Switf服务命令的运 用?通过命令的格式、功能、说明、示例的反复运用,能螺旋式 的提高学生运用命令的能力。例 ̄[1Swift upload命令。(1)格式: switf upload[command—options]container ilfe—or_directory [file—or—directory][…];(2)功能:根据参数将制定的文件 或者目录上传到容器内;(3)参数说明;[command—options] 选项,Container容器名称,或者是容器内的目录,file—or— directory本地文件系统内的目录或者文件,[file—or directory] 本地文件系统内的目录或者文件,可同时上传多个目录或文件; (4)示例(略)。通过多示例的参数描述的运用,例学生撑据命 令格式的灵活运用。 三、开展Openstack Swift SDK应用模块教学。提高学生 “项目”开发能力 频、存储备份等静态资源。OpenStack除有Rackspace和NASA 的大力支持外,还有包括Dell、Citrix、Cisco、Canonical等重量 级公司的贡献和支持,发展速度非常快,有取代另一个业界领 先开源云平台Eucalyptus的态势。基于OpenStack Switf服务, Android云存储客户端应用开发要具备的能力是:在了解和掌 握云存储服务OpenStack Swit的搭建和使用的前提下,按移动 f客户的需求,开发移动客户端应用项目。 一、开展OpenStack Swift/] ̄.务搭建过程教学。提高学生 Android云存储客户端应用开发采用项目模块化进行教 学,模块是“项目式”教学的最小单元,Android云存储客户端 应用项目中常用的模块有登录注册模块、文件浏览模块、文件 操作配置能力 以搭建单节点的swift服务主要供网盘开发使用为可视化 的演示对象,安装操作系统最小化Centos6.5一x64桌面操作系 统,配置主机名等,将提供的压缩包导入到操作系统内。 (一)演示单节点的Swift服务搭建过程 操作模块等,下面以登录注册模块中的登录为例进行说明。 (一)功能需求 已知已注册可登录的账号用户名为gw001,密码是00000。 根据原型图设计实现登录窗1:3View,如图1所示。 教师一边演示,学生一边搭建操作,这是最好的效果。教 户不正确,验证不通过,提示用户重新输入账户和密码;(4)密 码不正确,验证不通过,提示用户重新输入账户和密码;(5)连 续输入3次不正确,提示用户找回密码。通过邮件的方式找回。 (二)界面代码实现 ~ 心 1.导人项目。运行Android Studio,选择File\Open..,点 磷黢 鞫 黼 击弹出选择project64目录下面的项H--swiftstorage ll,如图3 所示。 聱 、 ☆ ’ , 图1登录窗口View 登录窗口的控制层,如图2所示。 图3导入项目 2.界面代码实现。登录布局包含5个组件。从上到下依次 为:图标(ImageView)、用户输入框(EditText)、密码输入框 (EditText)、登录按钮(Button),注册按钮(TextView)。及最下 面一个进度条(ProgressBar)。几个组件的说明如表I所示,原始 代码略。此布局的路径app\src\main、res\lay0ut、login.xml。 表1登录相关组件 组件 lmageView E(1it1 xt EdifI xt Button nxtViem 作用 罔标 用户名输入框 密码输入框 登录按钮 注册按钮 ID imageLogo txtUsername fXtPa. ̄SWOrd btnLogin register ProgressBar 显示登录进度的进度条 servieesProgressBar (三)功能执行测试 测试的场景(TestCase)包括如下,可以编写单元测试,或 者自己手工测试,场景如表2所示。 表2测试用例表 编号 测试场景 输入参数 预期结果 l 用户名称和密码都正确 2 用户名称正确tJsername:gwO01 登录成功,进入 password:00000 MainActivity。 图2登录窗口控制的流程图 控制流程的说明:在SDK中,我们知道Keystone,q ̄务负责用 户的认证和授权,这里调用Keystone的认证,传递的参数为用户 名和密码。(1)没有联网,服务不能访问,提示用户联网;(2)账 Username:gwO01 登录不成功.提示用户名 password:00000 或密码错误,请重新输入。 3 用户名称错误Username:gw001 登录不成功,提示用户名 密码可以任意 password:00000 或密码错误.请重新输入。 4 用户名称为空Username:gwOOl 提示用户名不能为空,请 密码任意 ,密码错误 ..password:00000 重新输入。 5 用户名称任意.密码为空 Username: 提示用户名不能为空,请 password:00000 重新输入。 户和密码都正确,验证通过,自动登录,展示网盘主窗口;(3)账 经过测试,合法用户能够正常登录,非法用户和输入被阻 止。至此,完成了登录功能的开发。 (下转第192页) l, 耄 鬣 中介手段,在服务器通过浏览器发送来 的服务器上,服务器进行用户身份验证, 这就需要借助于数据库中的数据;最后 界面会返回到原始的登录页面上。假如 在登录时,用户忘记了先前所设置的密 码,也能够在登录界面中进行密码找回 果反馈给服务器;最后服务器会将注册 结果返回到原始的浏览器注册界面中, 让用户知道是否注册成功,如果注册成 功,那么用户就可以输入用户名、密码登 的验证请求后,数据服务器就能够对信息 加以存储;第三,在服务器作用下,浏览 器会重新将页面跳转到注册结果界面。 三、基于物联网的物流信息系统实现 录到物流信息系统中进行操作。 总之,物联网技术已经在日常生活 (一)开发环境。要让系统中所有的 设计功能都得以实现,就需要先保证所 或重新设置,这时仅需要用户点击忘记 密码超链接并按照相关的要求进行操作 就可以了。服务器端的作用在于对登录者 中得到了广泛运用,将物联网技术应用 到物流行业也是物流领域必然的发展趋 有的模块得到实现。在编写程序代码时, 需要用到C语言、Visual Studio 2012等编 程语言对平台进行编译,SQL SERVER数 的身份加以验证,出于保护用户个人信息 安全的目的,在设计登录模块时,通常都 需要对密码进行加密处理,这就需要用 到加密存储技术,系统在接收到用户的 登录密码之后,要想把它和数据库进行 对比,就要先用Discuz进行加密处理。 势,设计出科学合理的物联网信息系统, 有助于物流企业增强信息资源整合水 平,实现物流信息的智能化管理,让物流 据库并未被运用到存储数据中。 (二)数据库。在SQL SERVER数据 存储时,由于数据库属于关系型,所以 和SQL SERVER比较起来,MySQL有着 信息在物流供应链中得以有效传递、共 享,提高信息利用效率;完善物流领域 业务流程,让物流业务流程管理变得更 加便捷化、智能化;满足各个层次的物 流运行与物流信息服务需要。基于物联 网技术的物流信息系统还可以跨行业、 更为突出的稳定性优势,而且也可以更 好地支持Windows,SQL SERVER相对 其次是注册模块。用户在尚未注册 之前是无法直接登录到物流信息系统 中的,所以用户要想使用物流信息系统 首先就需要进行注册。在注册模块实现 时,首先用户要对用户名、密码等进行设 置,输入手机号码、验证码等内容,对于 而言更加适合于大数据量级别的设计。 在连接数据库时,先要对数据库进行安 装。在对数据库进行连接时,主要是对 物联网物联信息系统加以连接,在连接 上之后,数据库就能够借助于相应的程 序而进行自动操控。在开发Visual Studio 2012以后,在物联网信息系统中建立C语 言文件,对数据库进行修改连接时只需 在原代码基础上进行就可以了。当这些都 完成之后,就能够对数据库连接加以合 理配置,让数据库连接得以顺利实现。 (三)系统的实现。在借助于上述开 发环境与数据库基础上,可以对不同模 块详细的实现情况加以分析。 首先是登录模块。由于文中所提及 的登录界面其实是物联网物流信息系统 中初始页面的体现。在实现登录模块时, 注册以后的用户能够在登录界面上直接 登录,登录时需要输入用户名与密码,然 后点击登录按钮进行登录;接着浏览器 跨部门运行,包含的范围很广,所以关于 这一系统的建立、运行与管理同时也是 非常复杂的工作,其是否可以有效运营 不但取决于文中所提及的项目内容,同时 也和科学的运营机制息息相关,在项目 密码进行确认。用户在确认信息无误之 后,点击注册按钮进行注册,这一过程 较为方便。如果需要输入验证码,用户可 以点击验证码获取按钮进行获取;在用 户名输入之后,也要进行验证,而需要着 重注意的是系统一定要保证所有用户名 的唯一性,也就是用户名不得重复使用。 如果用户在注册时显示该用户名已被使 用,那么浏览器就会显示“该用户名已存 在”,这时用户就要重新输入用户名;当 输入密码之后,系统也会进行验证,确保 密码由数字、字母所组成,不得包含标点 符号;接着要确认密码正确与否,需要用 户再次输入密码,保证两次输入的密码 一实施之前是否需要先明确投资、运营主 体等也是非常关键的问题,这些需要我 们不断进行探索。 【参考文献】 [1]卓志宏.基于物联网技术推进现 代企业物流信息系统运作研究[I].物流 技术,2013(17) [2]阎冰,李拓夫,叶昊儒.基于物联 网技术的物流管理信息系统构建[J].自 动化与仪器仪表。2016(11) 致且正确才可登录进去。用户注册时 【作者简介】刘 巧(1975一 ), 广西柳州人,硕士,柳州城市职业学院讲 师;王树慧(1974一 ),广西柳州人,柳 州铁道职业技术学院高级实验师。 (责编黎原) 输入的数据信息会通过浏览器而传输到 服务器中,如手机号码、用户名、密码等 信息,同时对服务程序register注册时向 web service进行请求,用户信息会通过 注册服务器而得以注册,并且将注册结 ● 会将用户具体的登录活动记录下来,用 户名与密码不得为空,而且还要正确无 误。在检查以后,浏览器就能够将用户的 登录请求发送到物联网物流信息系统中 (上接第190页) 四、结语 方法,并在软件技术、信息安全技术等 相关专业的教学实施中,取得了良好的 效果。 环境下的数据存储[J].计算机技术与发 展,2011(4) 本文为促进学生Android云存储客 户端应用开发能力培养,从Openstack Swift服务搭建的配置能力、服务命令的 运用能力、应用模块的开发能力进行了 教学设计,系统地阐明了Android云存储 客户端应用开发能力培养“教与学”的 【参考文献】 [1]孙海军.基于云计算的大数据处 理技术[J].信息安全与技术,2014(11) [2]王德政,申山宏,周宁守云计算 【基金项目】2016年Google高职高专 教育合作项目“基TAndroid ̄计算课程 教学的研究与实践”研究成果 (责编刘健华) 。 匠函圈豳圜