

免费预览已结束,剩余41页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件综合课程设计(论文)软件综合课程设计题 目 基于android的智能课堂的管理 学 院 通信与电子工程学院 专业班级 电子123班 学生姓名 指导教师 2015年 11月 20 日摘 要近年来,智能手机在全球范围内迅速普及。根据市场研究公司尼尔森发布的2013移动消费者报告显示,中国智能手机普及率已达到66%,已超越英国和美国的普及率。随着信息科技的快速发展,人们生活水平的提高,对电子产品的功能要求也越来越高。人们希望通过简单方便的操作,对周围设备进行访问控制。android是一种开源的手机操作系统,具有强大的应用层api和丰富的传感器功能,其开放的平台有利于开发者开发出各类应用软件,增加手机的个性化服务。本文将android手机与pc端联系起来,介绍了一种基于android手机的无线控制系统。在该系统中,android手机利用周边无线通信资源与其他设备进行交互,可进行无线鼠标控制、无线键盘输入、文件传输操作等。智能手机普及率的提升,催生了基于智能操作平台的附加产物。而android平台为开源的手机开发平台,通过对android平台的设计开发,使智能手机获得增强化的个性服务。提出了基于android手机的无线控制系统,介绍了整体结构框架,分析了各功能模块的具体实现,并在实际设备中进行测试。实现了基于android手机对设备的远程访问和控制。关键词:智能;android;开放1 abstractinrecentyears,therapidexpansioninthesmartphonesglobally.according to marketresearch firmnielsenthe2013mobileconsumersreportreleasedbythechinassmartphonepenetrationratehasreached66%,hassurpassedthepopularityrateofbritainandtheunitedstates.withtherapiddevelopmentofinformationtechnology,peoplelivingstandardrise,tothefunctionalrequirementoftheelectronicproductsisbecomingmoreandmorehigh.itishopedthatthroughasimpleandconvenientoperation,theaccesscontrolonthesurroundingequipment.androidisanopensourcemobileoperatingsystem,withstrongapplicationlayerapiandrichsensorfunction,itsopenplatformfordeveloperstodevelopallkindsofapplicationsoftware,increasemobilepersonalizedservice.linkandroidmobileandpc,thispaperintroducesawirelesscontrolsystembasedonandroidmobilephones.inthissystem,theandroidmobilephoneusewirelesscommunicationresourcesaroundtointeractwithotherequipment,cancontrolthewirelessmouse,wirelesskeyboardinput,suchasfiletransferoperation.theascensionofsmartphonepenetration,hasgivenrisetoadditionalproductbasedonintelligentoperatingplatform.theandroidplatformforopensourcemobiledevelopmentplatform,throughthedesignanddevelopmentoftheandroid,platform,makesmartphonesincreasestrengtheningpersonalityservice.isproposedbasedontheandroidmobilewirelesscontrolsystem,thispaperintroducestheoverallstructureframework,concreterealizationofeachfunctionmoduleareanalyzedandtestedinrealdevices.implementedbasedontheandroidphonetoremoteaccessandcontrolequipment.keywords:intelligence;android;disparkiii软件综合课程设计(论文)目 录摘 要iabstractii第1章 绪论11.1 设计背景11.2 所涉技术介绍11.2.1 android 简史11.2.2 android 平台21.2.3 开发所需的工具31.3 创新点61.3.1 主要解决的问题61.3.2 设计内容简介61.3.3 文档框架81.4 android平台数据存储方式9第2章 开发环境搭建102.1 java环境的安装102.2 配置eclipse102.3 数据库的安装11第3章 软件设计14第4章 实现功能展示154.1 横向导航154.2 侧边栏滑动18第5章 部分代码实现20总结29参考文献30致谢31iv第一章 绪论1.1 设计背景开放式网上虚拟课堂是一种运用虚拟现实技术模拟真实课堂的计算机教学软件。它采用多媒体技术在计算机上建立虚拟课堂环境,提供在线学习的资源,使学生在互联网上通过接近真实的人机交互界面完成课前预习、课后复习、在线考试、教师刷卡点名,同时提供网络课堂的一体化管理功能。开放式网上虚拟实验室又分为课堂仿真系统和虚拟课堂管理系统两个部分,在此基础上可建立虚拟课堂。这种虚拟课堂的设计,不仅可以培养学生的自主学习能力而且老师不再需要打印试卷以及批判试卷,取而代之的是在线考试,当场给出正确答案及分数,大大节省了老师同学们的时间和精力。学生可根据每个科目的教学课件进行预习,提前知道本节课将要学习的内容以及重难点,课后也可以在线完成老师布置的作业,然后提交。 众所周知,如今大学生上课玩手机似乎已经成为一个习惯,这样一来,自主学习能力可以大大提升,让同学们真正融入到有计划的学习。本系统的功能是帮助老师记录课堂的学生进出信息,能通过rfid刷卡对学生的进出进行记录,并显示进出人员信息。并且可以通过手机进行网页进入界面,来实现通过手机来获取课堂的学生信息。课堂智能管理主要通过android手机客户端、数据库、两大部分组成,简单方便是本设计的最大特点。在学生上课之前可以在掌上虚拟课堂app进行资料查看,预习,课前辅导,做好充足的准备,通过刷卡方式登录系统,减少教师点名所浪费时间,简单方便的进行学生出席情况,完成整个教学工作。1.2 所涉技术介绍1.2.1 android 简史android 平台是open handset alliance的成果,open handset alliance 组织由一群共同致力于构建更好的移动电话的公司组成。这个组织由 google 领导,包括移动运营商、手持设备制造商、零部件制造商、软件解决方案和平台提供商以及市场营销公司。从软件开发的观点看,android 正处在开源领域的中心位置。市场上第一款支持 android 的手机是由 htc 制造并由 t-mobile 供应的 g1。这款设备从设想到推出花了大约一年的时间,惟一可用的软件开发工具是一些实行增量改进的 sdk 发行版。随着 g1 发行日的临近,android 团队发布了 sdk v1.0,用于这个新平台的应用程序也浮出水面。为了鼓励创新,google 举办了两届 “android developer challenges”,为优胜的参赛作品提供数百万美金的奖励。g1 问世几个月之后,随后就发布了 android market,它使用户可以浏览应用程序,并且可以将应用程序直接下载到他们的手机上。经过大约 18 个月,一个新的移动平台进入公众领域。1.2.2 android 平台android 有丰富的功能,因此很容易与桌面操作系统混淆。android 是一个分层的环境,构建在 linux 内核的基础上,它包括丰富的功能。ui 子系统包括:窗口视图:用于显示一些常见组件(例如编辑框、列表和下拉列表)的小部件android 包括一个构建在 webkit 基础上的可嵌入浏览器,iphone 的 mobile safari 浏览器同样也是以 webkit 为基础。android 提供多种连接选项,包括 wifi、蓝牙和通过蜂窝(cellular)连接的无线数据传输(例如 gprs、edge 和 3g)。android 应用程序中一项流行的技术是链接到 google 地图,以便在应用程序中显示地址。android 软件栈还提供对基于位置的服务(例如 gps)和加速计的支持,不过并不是所有的 android 设备都配备了必需的硬件。另外还有摄像支持。过去,移动应用程序努力向桌面应用程序看齐的两个领域分别是图形/媒体和数据存储方法。android 通过提供对 2d 和 3d 图形的内置支持,包括 opengl 库,解决了图形方面的挑战。由于 android 平台包括流行的开源 sqlite 数据库,因此缓解了数据存储的负担。图 1 显示一个简化的 android 软件层次结构。应用程序架构如前所述,android 运行在 linux 内核上。android 应用程序是用 java 编程语言编写的,它们在一个虚拟机(vm)中运行。需要注意的是,这个 vm 并非您想象中的 jvm,而是 dalvik virtual machine,这是一种开源技术。每个 android 应用程序都在 dalvik vm 的一个实例中运行,这个实例驻留在一个由 linux 内核管理的进程中,如下图所示。图1-1 dalvik vm1.2.3 开发所需的工具1. android开始开发 android 应用程序的最简捷的方式是下载 android sdk 和 eclipse android 开发可以在 microsoft windows、mac os x 或 linux 上进行。 本文假设您使用的是 eclipse ide 和用于 eclipse 的 android developer tools 插件。android 应用程序是用 java 语言编写的,但是是在 dalvik vm(非 java 虚拟机)中编译和执行的。在 eclipse 中用 java 语言编程非常简单;eclipse 提供一个丰富的 java 环境,包括上下文敏感帮助和代码提示。java 代码通过编译后,android developer tools 可确保适当地将它打包,包括 androidmanifest.xml 文件。虽然没有 eclipse 和 android developer tools 插件也可以开发 android 应用程序,但是那样就需要熟悉 android sdk。2.java简介以及发展趋势java语言的发展现状及趋势;java是一种可以撰写跨平台应用软件的面向对象的;一、java语言的现状;java是sun公司推出的新的一代面向对象的程序;3.intranet正在成为企业信息系统最佳解决;(一)java语言已具备清晰的框架结构;目前,以sun公司公布的java最新框架结构为标;(二)推动了pc时代的发展;计算机的诞生及广泛应用推动了it领域的java语言的发展现状及趋势:java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由sun microsystems公司于1995年5月推出的java程序设计语言和java平台(即javaee, javame, javase)的总称。java自面世后就非常流行,发展迅速,对c+语言形成了有力冲击。java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人pc、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,java更具备了显著优势和广阔前景。java 语言的现状:java是sun公司推出的新的一代面向对象的程序设计语言,特别适合于internet应用程序开发,它的平台无关性直接威胁到wintel的垄断地位。一时间,“ 连接internet,用java编程”,成为技术人员的一种时尚。java作为软件开发的一种革命性的技术,其地位已被确立,这主要表现在以下几个方面:1.计算机产业的许多大公司购买了java的许可证,包括ibm,apple,dec,adobe,silicon graphics,oracelhp,toshiba,以及最不情愿的microsoft。这一点说明,java已经得到了工业界的认可。2.众多的软件开发商开始支持java的软件产品。例如:borland公司开发的基于java的快速应用程序开发环境latte。borland公司 的 这 一 举 措, 推 动 了java进入pc机 软 件市场。sun公司自己的java开发环境java workshop。数据库厂商如:illustra,sysbase,versant,oracle都在开发了支持html和javacgi接口。今天是以网络为中心的计算时代,不支持html和java,应用程序的应用范围只能限于同质的环境。3.intranet正在成为企业信息系统最佳解决方案,而其中java将发挥着不可替代的作用。intranet的目的是把internet用于企业内部的信息系统,它的优点表现在:便宜、易于使用和管理。用户不管使用何种类型的机器和操作系统,界面是统一的intrnet浏览器,而数据库、web页面、应用程序(用java编的applet)则存在www服务器上,无论是开发人员,还是管理人员,或是用户都可以受益于该解决方案。java语言正在不断的发展和完善自己,sun公司是主要的发展推动者,较通用的编译环境有jdk(java develop kit)与jws(java workshop)。还有很多其他公司正在开发java语言的编译器与集成环境,预计不久java语言的正确性与效率都将会提高,用户用java编程和现在用c+编程一样方便。(一) java 语言已具备清晰的框架结构目前,以sun 公司公布的java 最新框架结构为标准,将java 语言以java2 为中心,其组成分为了3 个部分:1)企业版j2ee。该版本是面对各大企业环境为中心而开发的一种以应用程序为主体的计算机网络平台,其中还包括3 个层次:ejb、jsp、和servslt ;2)标准版j2se。其中,java 核心编程为图形用户界面的编程、工具包程序的编写以及数据库的程序编写等;3)微型版j2me。该版本一直以消费品和各种嵌入式设备的网络应用平台为研究中心,主要涉及的领域为手机、手机中的各种无线游戏等。其核心技术为移动信息设备小程序。从目前java 语言的应用及推广来看,标准版的更符合大众需求,它以其简单方便的特点赢得市场好评。(二)推动了pc 时代的发展计算机的诞生及广泛应用推动了it 领域的发展,但现在的计算机早已不是访问internet 的唯一的途径。目前,各类更具信息化的电子产品成为一股新的力量进入it 领域,推动了pc 时代的大发展。由于各种消费信息的急剧增加,传统的客户机的各方面条件。均不如 pc,pc 的发展对服务器的应用管理体统也提出了更高标准。然而,java 语言完全满足了pc 的条件,在减少内存,直接在各类电子产品中运行,在网络中可被任何设备所识别,充分利用网络资源等方面有所突破创新,为pc 时代的发展创造了有力条件。(三)多元化的应用系统java 语言所面向的客户主要为计算机中的各种应用系统、应用工具以及现代化家电等。在java 语言的实时开发领域方面,ibm 公司首先开发出了适应于工业操作环境的一种嵌入式系统,以此,可以看出java 语言在工业领域的开阔前景。随着java 语言的诞生和发展更加的深入人心,各大知名商家陆续购买java 的许可证,纷纷投入了对java 语言的研究与开发中。因此,可以看出,多元化的应用系统为java 以及各个领域的应用平台注入了无线的生机与活力。java 语言的发展趋势(一)在it 产业的应用方面最初java 语言为与数据库联系紧密设计了java servlet 和sql-j 技术,以及jsp 技术。最为重要的是jsp 技术的迅猛发展,使java 语言的网络应用更为实际化、更高效快捷,成为it 产业首选的技术。jsp 以java 语言作为其服务器端的使用语言,结合了java script 等多种其他客户端语言,使网络浏览器更为方便的展现。另外,从目前java 发展前景来看,我国更多企业倾向于java/j2ee 技术,将其作为应用程序开发的首要选择方案。由于数据方面的程序设计以及逻辑方面的程序控制已成为我国企业环境程序应用的关键技术,并且这些都体现了java 语言的优势,因此,在java 语言的实际应用中,企业版越来越受到各大企业的欢迎。(二)在嵌入式设备研究应用方面java 语言近几年被广泛应用于移动电话、各种信息化家用电器等方面,甚至ic 卡等小型电子产品中也有所涉及。从java 语言的发展趋势来看,这种嵌入式的研究应用范围将会进一步扩大,甚至覆盖更多的电子信息产品,方便人们生活。(三)在移动通信方面近几年来,我国移动通讯业已开始了java 语言的应用。移动的运营方通过java 语言所创造的网络平台为客户提供了更加丰富的网络活动及网络信息。 例如:1、更加丰富生动的手机游戏。通过java 语言的应用,手机游戏图像更加丰富、更具吸引力,消费者还可根据自身的需要通过java 语言所建立的网络平台从网上下载适合自己的游戏,进一步满足消费者的需求;2、电商交易更加方便快捷。通过java语言的开发与应用,各手机使用者可根据自身需要通过java 平台进行机票及酒店预订等。消费者还可操作简易的股票买卖等活动;3、更加方便地进行网上阅读等活动。随着java 语言的使用,手机用户可根据个人爱好,随时随地地下载自己喜欢的书籍进行阅读,大大方便人们生活。另外,java 语言中的企业版已广为被各大商家所运用,而且,java 技术也已成功推动了全球无线技术应用的发展,为各种无线通信、游戏市场创造了良好的商机。1.3 创新点1.3.1 主要解决的问题 开放式网上课堂智能管理是一种运用虚拟现实技术模拟真实课堂的计算机教学软件。它采用多媒体技术在计算机上建立虚拟课堂环境,提供在线学习的资源,使学生在互联网上通过接近真实的人机交互界面完成课前预习、课后复习、提高教学速率与效率;这种虚拟课堂的设计,不仅可以培养学生的自主学习能力而且老师不再需要打印试卷以及批判试卷,取而代之的是在线考试,当场给出正确答案及分数,大大节省了老师同学们的时间和精力。学生可根据每个科目的教学课件进行预习,提前知道本节课将要学习的内容以及重难点,课后也可以在线完成老师布置的作业,然后提交。这样一来,自主学习能力可以大大提升,让同学们真正融入到有计划的学习。1.3.2 设计内容简介虚拟课堂主要通过android手机客户端、数据库两大部分组成,简单方便是本设计的最大特点。数据库android客户端 图1-2 设计主要结构该系统采用了java语言来进行通信实现,android端和pc端通过socket进行网络连接通信。android端做成app模式,运行时通过wifi或蓝牙连接服务端,在pc端使用java的osgi框架。在android手机上经过反复测试,手机连接server的时间小于3s,pc端对手机控制命令的响应时间小于5s,并能实现手机端对pc端的访问控制、操作。本系统采用了java技术以及android开发技术,用这两种主流技术建立了虚拟课堂环境,其功能是帮助老师记录课堂的学生进出信息,能通过rfid刷卡对学生的进出进行记录,并显示进出人员信息。并且可以通过手机进行网页进入界面,来实现通过手机来获取课堂的学生信息。在学生上课之前可以在掌上虚拟课堂进行资料查看,预习,课前辅导,做好充足的准备,通过刷卡方式登录系统,减少教师点名所浪费时间,简单方便的进行学生出席情况,完成整个教学工作。其系统功能图如下:图1-3 系统功能 1.3.3 文档框架android的系统架构:android的系统架构采用了由下至上的分层的结构,使下层为上层提供统一的服务。各层各司其职,本层及以下层发生变化不会影响上层,避免了各层的差异,图1是一张公开的关于android体系结构架构图:图1-4 android的系统架构从图中可以看出,android系统分为四个层面,从底层到高层分别是:linux核心层(linux kernel) linux核心层负责硬件的驱动程序、网络、电源、系统安全以及内存管理等功能。android的核心系统服务依赖于linux2.6内核,同时作为硬件和软件层之间的抽象层,隐藏了具体的硬件特性,并为上一层提供统一的标准服务。库(libraries)和运行环境层(android runtime):库和运行环境层包含了标准c函数库libc、 openssl、sqlite等以及支持游戏开发2d sgl和3d opengl|es,并负责解释和执行生成的dalvik格式的字节码。核心库提供了java编程语言核心库的大多数功能。每一个android应用程序都在自己的进程中运行,并拥有各自独立的dalvik虚拟机实例。 应用程序框架层(application framework):普通开发这可以使用android基本应用程序使用的系统api,android应用框架中的各个模块都可以被复用,各种服务也可以被复用。该层复用机制使用户可以方便的替换程序组件。应用程序层(applications):应用程序层内含有android内置的google maps、e-mail、即时通信工具、浏览器等,开发人员开发的程序也将置于该层,并同内置程序有平等的位置,可以相互调用和替换。这类应用基本都是通过java语言编写的,能够独立的完成某些功能的应用程序。开发人员可使用应用框架提供的api编写自己的应用程序。1.4 android平台数据存储方式基于android平台的数据存储方式分外部存储和内部存储两类。外部存储方式指:内容提供器和网络数据库,内部存储方式有:系统配置、文件存储、sqlite数据库10。在实际应用开发中主要使用内部存储方式。系统配置方式指通过android平台提供的sharedpreferences类,保存应用程序的一些简单的配置信息的机制。文件存储方式使用java中的io类实现对内部存储器或sd卡等外部存储设备中的文件的读写与解析,该方式实现数据插入与修改操作较复杂,每次操作都需读取整个文件,效率较低。sqlite是一款超轻量级的嵌入式数据库,支持sql语句,能实现查询、插入、删除、修改等操作,具有小、安全、免费等特点。本文提到的系统所选择的数据存储方式便是sqlit数据库,对数据进行操作简单而快速。第2章 开发环境搭建2.1 java环境的安装安装java 1.7 ,按步骤进行依次操作在系统环境变量下将java_home 、path添加java路径图2-1 环境变量控制截图2.2 配置eclipse搭建开发环境需要:1、eclipse2、android-sdk:android开发环境3、adt:android开发工具,eclipse插件(在搭建环境之前要安装java,并配置)配置adt:在eclipse中 helpinstall new softwareadd 添加之后就配置好了sdk和adt,安装genymotion插件:eclipse插件。1、help install new software 点击add。2、在名字里面填写genymotion,在location里面填写/eclipse/。3、然后把新加载出来的genymotion和genymotion eclipse tools都选上,把下面的contast的对号去掉,然后就完成了。把genymotion插件安装在eclipse中后再配置路径,在windowpreferencesgenymobilegenymotion 选上后填写genymotion的安装路径。在eclipse中放入vim插件:下载一个vrapper插件,放入到eclipse的dropins的文件夹下即可。2.3 数据库的安装mysql是一个关系型数据库管理系统,由瑞典mysqlab 公司开发,目前属于oracle公司。mysql最流行的关系型数据库管理系统,在web应用方面 mysql 是最好的 rdbms (relational database management system,关系数据库管理系统) 应用软件之一。mysql 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。mysql 所使用的 sql 语言是用于访问数据库的最常用标准化语言。mysql 软件采用了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 mysql 作为网站数据库。由于其社区版的性能卓越,搭配php和apache可组成良好的开发环境。打开下载的mysql安装文件mysql-5.0.27-win32.zip,双击解压缩,运行“setup.exe”。mysql安装向导启动,按“next”继续。择安装类型,有“typical(默认)”、“complete(完全)”、“custom(用户自定义)”。 三个选项,我们选择“custom”,有更多的选项,也方便熟悉安装过程。选择服务器类型,“developer machine(开发测试类,mysql占用很少资源)”、“server machine(服务器类型,mysql占用较多资源)”、“dedicated mysql server machine(专门的数据库服务器,mysql占用所有可用资源)”,大家根据自己的类型选择了,一般选“server machine”,不会太少,也不会占满。选择mysql数据库的大致用途,“multifunctional database(通用多功能型,好)”、“transactional database only(服务器类型,专注于事务处理,一般)”、“non-transactional database only(非事务处理型,较简单,主要做一些监控、记数用,对myisam数据类型的支持仅限于non-transactional),随自己的用途而选择了,我这里选择“transactional database only”,按“next”继续。对innodb tablespace进行配置,就是为innodb 数据库文件选择一个存储空间,如果修改了,要记住位置,重装的时候要选择一样的地方,否则可能会造成数据库损坏,当然,对数据库做个备份就没问题了,这里不详述。我这里没有修改,使用用默认位置,直接按“next”继续。选择您的网站的一般mysql访问量,同时连接的数目,“decision support(dss)/olap(20个左右)”、“online transaction processing(oltp)(500个左右)”、“manual setting(手动设置,自己输一个数)”,我这里选“online transaction processing(oltp)”,自己的服务器,应该够用了,按“next”继续。是否启用tcp/ip连接,设定端口,如果不启用,就只能在自己的机器上访问mysql数据库了,我这里启用,把前面的勾打上,port number:3306,在这个页面上,您还可以选择“启用标准模式”(enable strict mode),这样mysql就不会允许细小的语法错误。如果您还是个新手,我建议您取消标准模式以减少麻烦。但熟悉mysql以后,尽量使用标准模式,因为它可以降低有害数据进入数据库的可能性。按“next”继续。西文编码,第二个是多字节的通用utf8编码,都不是我们通用的编码,这里选择第三个,然后在character set那里选择或填入“gbk”,当然也可以用“gb2312”,区别就是gbk的字库容量大,包括了gb2312的所有汉字,并且加上了繁体字、和其它乱七八糟的字使用mysql的时候,在执行数据操作命令之前运行一次“set names gbk;”(运行一次就行了,gbk可以替换为其它值,视这里的设置而定),就可以正常的使用汉字(或其它文字)了,否则不能正常显示汉字。按 “next”继续。选择是否将mysql安装为windows服务,还可以指定service name(服务标识名称),是否将mysql的bin目录加入到windows path(加入后,就可以直接使用bin下的文件,而不用指出目录名,比如连接,“mysql.exe -uusername -ppassword;”就可以了,不用指出mysql.exe的完整地址,很方便),我这里全部打上了勾,service name不变。按“next”继续。选择是否将mysql安装为windows服务,还可以指定service name(服务标识名称),是否将mysql的bin目录加入到windows path(加入后,就可以直接使用bin下的文件,而不用指出目录名,比如连接,“mysql.exe -uusername -ppassword;”就可以了,不用指出mysql.exe的完整地址,很方便),我这里全部打上了勾,service name不变。按“next”继续。这一步询问是否要修改默认root用户(超级管理)的密码(默认为空),“new root password”如果要修改,就在此填入新密码(如果是重装,并且之前已经设置了密码,在这里更改密码可能会出错,请留空,并将“modify security settings”前面的勾去掉,安装配置完成后另行修改密码),“confirm(再输一遍)”内再填一次,防止输错。“enable root access from remote machines(是否允许root用户在其它的机器上登陆,如果要安全,就不要勾上,如果要方便,就勾上它)”。最后“create an anonymous account(新建一个匿名用户,匿名用户可以连接数据库,不能操作数据,包括查询)”,一般就不用勾了,设置完毕,按“next”继续。确认设置无误,如果有误,按“back”返回检查。按“execute”使设置生效。第3章 软件设计3.1 软件设计原理基于android手机的无线控制软件主要运用到socket通信原理。socket是通信的基本操作单元,主要有两种操作方式:面向连接和无连接。面向连接的socket操作使用tcp协议,此模式下必须先连接上目的地的socket,此操作模式下所有所发信息都会在另一端以同样的顺序被接受,安全性高。无连接的socket操作无需连接一个目的socket,只做简单的投出数据报,但是操作数据安全性不高。综合考虑本设计采用面向连接的socket操作,在手机端和pc端建立一个socket连接,当手机端和pc端之间发送不同的命令时,手机和pc机做出不同的响应,并返回响应的数据。pc端作为服务器先运行起来,通过wifi在指定端口处进行监听。随后启动android端程序,在android端输入口令和pc端ip地址,并发送给服务器。当服务器接收的口令和ip地址与预置信息相同,验证信息无误后,返回数据信号,此时允许建立连接。现在便可在pc端和android端进行无线控制,包括命令传送和文件传输。为了提高响应速度,该系统在多处使用了子线程。此方法避免了事件间的盲等状态,可异步处理不同事件。如果当前没有处理任务,便可将处理器时间让给其他通信任务。提高了程序的运行效率以及cpu的利用率,同时减少服务器响应时间。第4章 实现功能展示4.1 横向导航横向导航:使用viewpagerindicator完成横向导航并且页面可随横向导航的变动而灵活变动不同的页面,每个页面有自己的内容:变动不同的页面,每个页面有自己的内容: 图4-1 横向导航展示主要内容包括:(1) viewpager的切换,且每个图片所描述的内容随着图片的变化而变化。(2) listview内容的可点击,每个条目均可点入且有自己的内容: 如下图:在“中心介绍“,通过滑动,图片以及其下面的文字介绍和小点都在变化,图片若为第一张,则下面的小点中第一个为红色,其他为灰色,到第几张图片则第几个点为红色,而且小点的个数代表着图片数量,如果操作人员向某你一方向滑动的次数超过图片的数量,图片则会循环操作,从头开始:图4-2 viewpager的切换 (3)下拉刷新:通过listview可完成下拉刷新如图: 图4-3 listview下拉刷新展示 在“教学文件“中,listview的条目经过下拉刷新,获得新的条目。4.2 侧边栏滑动图4-4 侧边栏滑动展示如图:在侧边栏滑动中有4个功能,(1) 点击“首页“会回到主页 图4-5 快速返回首页展示(2) 点击“课堂动态“,会跳到下一个界面: 图4-6 课堂动态功能展示图4-7 标题栏横向导航标题栏也可完成横向导航在菜单栏中,点击箭头所示的按钮,出现一个新的页面:图4-8 快速登录 点击列表中功能栏,出现新的界面:图4-9 功能栏点击测试图4-10 带有id新界面展示第5章 部分代码实现工程运行时需要的相关包,类库 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 在eclipse里完成工程的部署- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 图5-3完成横向导航配置listview下拉更新完成图片的设定,以及完成横向填满整张图片工程需要的图片侧边栏滑动功能实现:里面编写一个线性布局,添加textview 和listview等完成侧边栏滑动。该图片实现的功能是:rfitext.java文件为侧边栏所进入的fragment,shuakaactivity.java文件为rfidtext.java文件所跳转到的activity,并在shuakaactivity.java文件中实现调用labpro包并可实现rfid刷卡界面,连接rfid,刷卡后,软件便可通过卡的id来从mysql-front中获取相应id的信息。侧边栏滑动部分代码图片轮播以及文字联动功能:在demoobjectfragment.java这个类中使用viewpagerindicator作出横向导航,完成图片和文字联动,加上小点的联动变换。关联部分代码文字的(字多,用图片也可以,是一样的内容): mdemocollectionpageradapter = new democollectionpageradapter( getactivity().getsupportfragmentmanager();/1. 获取到viewpager mviewpager = (viewpager) view.findviewbyid(r.id.pager);/ 2. 设置 fragmentstatepageradapter mviewpager.setadapter(mdemocollectionpageradapter); mviewpager.setonpagechangelistener( new viewpager.simpleonpagechangelistener() override public void onpageselected(int position) / getactionbar().setselectednavigationitem(position); ); / 把viewpagerindicator 与 viewpager进行关联 tabpageindicator indicator = (tabpageindicator)view.findviewbyid(r.id.indicator); indicator.setviewpager(mvie
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 天然石材订购合同范本
- 成都滴滴司机合同范本
- 永电施工合同范本
- 购买废弃瓷砖合同范本
- 钢材电子购销合同范本
- 社区居委会消防知识培训课件
- 文具公司加盟合同范本
- 商铺资源转让合同范本
- 种植土地承租合同范本
- 社区安全知识培训课件的意义
- 肿瘤防治宣传科课件
- 2025年公安部交管局三力测试题库及答案
- 2025年军队文职人员招聘考试(公共科目)测试题及答案一
- 纪检监督检查培训课件
- 复发性流产护理
- 2025年西藏自治区事业单位招聘考试教师招聘体育学科专业知识试卷(模拟试题)
- 先天性甲状腺功能减退症诊治指南解读课件
- 大兴安岭黄岗锡铁钨多金属矿床的成矿过程研究
- 2025至2030中国裸眼3D行业产业运行态势及投资规划深度研究报告
- 深呼吸有效咳嗽实施方法
- 检修安全监护管理制度
评论
0/150
提交评论