毕业设计(论文)-基于android的汽车违章查询的设计与实现.doc_第1页
毕业设计(论文)-基于android的汽车违章查询的设计与实现.doc_第2页
毕业设计(论文)-基于android的汽车违章查询的设计与实现.doc_第3页
毕业设计(论文)-基于android的汽车违章查询的设计与实现.doc_第4页
毕业设计(论文)-基于android的汽车违章查询的设计与实现.doc_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

太原理工大学毕业设计(论文)用纸太原理工大学毕业设计(论文)任务书第1页毕业设计(论文)题目:基于android的汽车违章查询的设计与实现全套设计加扣 3012250582毕业设计(论文)要求及原始数据(资料):1综述汽车违章查询系统的使用及现状;2深入了解汽车违章查询系统的原理和相关知识与技术;3熟练掌握汽车违章查询系统的相关技术,训练编写程序的能力;4设计并实现汽车违章查询系统;5深入分析汽车违章查询系统的关键技术与编写语言;6训练检索文献资料和利用文献资料的能力;7训练撰写技术文档与学位论文的能力。第2页毕业设计(论文)主要内容:1综述汽车违章查询系统的应用;2了解汽车违章查询系统的相关技术;3熟悉汽车违章查询系统的安卓开发环境; 4设计汽车违章查询系统;5. 深入分析汽车违章查询系统的设计流程;6熟练掌握汽车违章查询系统的编写技术;7设计与实现汽车违章查询系统。学生应交出的设计文件(论文):1内容完整、层次清晰、叙述流畅、排版规范的毕业设计论文;2包括毕业设计论文、源程序等内容在内的毕业设计电子文档及其它相关材料。 第3页主要参考文献(资料):1 郭文俊. 车一百:汽车后服务,从查违章开始J. 创业邦, 2014 , (11)2 余建胜. 城市汽车交通违章行为的博弈分析J . 蚌埠学院学报, 2013, 2(1)3 陈志斌. 应用汽车行驶记录仪提高行车安全性J. 广东公路交通, 2003,(03)4 崔楠. 车辆违章信息管理系统的实现D.山东大学,20135 金凯. 智能交通系统中车牌识别与违章检测算法的研究与应用D. 北京邮电大学, 20146 吴亚峰,杜化美,苏亚光. Android编程典型事例与项目开发M.北京:电子工业出版社,20117 白文江.基于Android平台的移动应用开发研究J.太原大学学报.2011(03)8 Conti J P.The Android are coming.Engineering & Technology,2008,3(9)9 Bruce Ecke.Thinking in JavaM.Prentice Hall .200610 Steffen Itterheim.Learn iPhone and iPad Cocos2d Game DevelopmentM,清华大学出版社,2012:31-50.专业班级软件1232班学生要求设计(论文)工作起止日期2016年3月21日2016年6月24日指导教师签字日期2016年3月21日教研室主任审查签字日期系主任批准签字日期基于android的汽车违章查询的设计与实现摘要现在的社会,随时中国的崛起,国家的经济实现得到提高,拥有私家车的中国家庭也越来越多了,甚至一个中国家庭的私家车都不止一辆,所以交通管理部门的工作量和工作压力大大提升,交警的压力也越来越大,传统的电子监控系统已经不能适应当前的交通状况。汽车违章情况是现代交通中很严重的一个问题,因而由这个方面带来的交通安全问题也更加的严重和突出。交管局由于人力资源有限,不可能对所有的违章监督实现全天候,全方位的监督与管理,所以必须依靠现代化技术手段来监督和管理交通,这样我们的城市才会更加的井然有序。而我所设计的APP根据汽车违章查询的特点,主要由登录与注册,汽车违章查询,汽车归属地选择,紧急处理和紧急拍照等功能模块组成。在设计和编写的过程中最大限度的满足用户的需求,所以,这个APP具有较强的实用性和针对性。下面具体介绍了各功能模块所包含的小模块的功能,具体包括:用户注册与登录功能主要是让第一次进入APP查询违章情况的用户进行账号注册,输入自己的用户名和密码,然后注册,之后登陆,进入查询界面;汽车违章查询功能是要求用户输入自己的车牌号,车架号和需要查询的地点等等的信息进行违章查询的操作;归属地选择功能主要是为了让用户选择汽车查询是的查询地点;紧急处理功能是通过一个按钮使用户进入紧急处理界面;而拍照功能是为了用户遇到紧急情况需要拍照时进行拍照的,之后图片保存到手机,比如车辆剐蹭等等小事故。关键字 : 汽车违章; 违章查询; 用户登录; 拍照Illegal Query Based on Android Car Design and ImplementationAbstractWiththecontinuousdevelopmentofChineseeconomy,Chinaownedmoreandmorecarandthereforethemanagementofworkloadandpressurecontinuetorise,traditionaltelevisionmonitoringsystemcannotadapttocurrenttrafficconditions.Thephenomenonoftrafficviolationsinmoderntrafficbecomeaveryseriousproblem,andtheresultingsafetyproblemsbecomemoreprominent.Asthepolicelimitedtrafficmanagementauthoritiescannotrelyonmanpoweronallroadsections,junctionstoimplementall-weather,fullrangeofmanagement,itmustrelyonmoderntechniquestomanagetraffic,leadingtheurbantrafficmanagementtotheefficient,fastdirection.And I designed the APP according to the characteristics of the car illegal query, mainly by the login and registration, car illegal query, car belongs to select, emergency treatment and emergency function modules such as taking pictures. In the process of designing and writing the maximum to meet the needs of users, so, this APP has stronger practicability and pertinence. The following specific introduced the function of each function module contains small module, including: user registration and login function mainly is for the first time into the APP of illegal cases registered user account, enter your user name and password, and then register, login, after enter the query interface; Car illegal query function is to require the user to input their own license plate number, the frame number and need the location of the query, and so on information to those of the query operation; Belonging to select function is to give the user to select auto query yes query site; Emergency handling capabilities is through a button the user into the emergency processing interface; And the camera is when you take a photo to users in an emergency need to take photos, after images saved to a mobile phone, such as traffic incident, and so on small accident.Keywords: Car illegally; Violation of the query; The user login; Taking pictures目录1 绪论11.1 国内外动态11.2 选题的背景和意义11.3 设计实现的主要目标22 开发平台和开发技术的介绍32.1 Android开发平台32.2 Android的系统架构32.3 Android的应用32.4 Android的开发52.4.1 Android的开发工具52.4.2 Android开发平台的搭建53 需求分析73.1 现状分析73.2 系统要解决的问题73.3 系统要实现的功能及实现的方法73.3.1 本系统要实现的功能73.3.2 实现方法84 概要设计94.1 系统总体功能结构94.2 系统总体架构104.2.1 用户注册与登录104.2.2 违章汽车的查询114.2.3 紧急处理-拍照115 详细设计125.1 用户的注册与登录125.1.1 界面设计125.1.2 功能设计135.2 查询175.3 选择省份城市和车牌号归属地295.4 结果界面305.5 紧急处理界面325.6 数据库的实现355.6.1 SQLite数据库355.6.2 通过接口访问网站上的汽车违章查询数据库356 软件测试366.1 测试方法366.2 测试项目366.3 测试用例366.3.1 注册与登录功能测试366.3.2 查询功能测试386.3.3 其他各模块的功能测试396.4 测试结果397 总结40参考文献41致谢42外文原文43中文翻译53 太原理工大学毕业设计(论文)用纸1 绪论1.1 国内外动态现代的社会是信息飞速发展的社会,随着高科技的不断发展,人们已经由万维网服务向网格服务迈进。信息社会已经不再是未来科学家的预言、社会学家的抽象思想或者是人们的观念,而是实实在在的日益显现的客观事实。汽车违章查询也在向信息化迈进,但是现在只限于人力的监督与管理已不能适应当前的交通状况,它的不及时性、不准确性等弊端造成了交通管理工作的被动和滞后。现代城市道路众多,交通状况复杂,汽车小事故频繁发生,而处理支持事情仅仅依靠交管局的人力资源是不够的,而且及时性也不高。为了缓解这种压力,就必须依赖现代技术来解决这种问题。目前,公安交警部门已经拥有了自己的数据网络,特别是电子交警“上岗”以来,信息的传输变得更加迅速和快捷,但是电子警察和显示中的警察是没有交集的,电子警察对信息的查询也有很大的局限性,公安信息系统和人民大众之间还基本出图隔离状态。1.2 选题的背景和意义现在,随着中国的发展,国家的经济实现得到提高,拥有私家车的中国家庭也越来越多了,甚至一个中国家庭的私家车都不止一辆,所以交通管理部门的工作量和工作压力大大提升,交警的压力也越来越大,传统的电子监控系统已经不能适应当前的交通状况。汽车违章情况是现代交通中很严重的一个问题,因而由这个方面带来的交通安全问题也更加的严重和突出。交管局由于人力资源有限,不可能对所有的违章监督实现全天候,全方位的监督与管理,所以必须依靠现代化技术手段来监督和管理交通,这样我们的城市才会更加的井然有序。而我所设计的APP根据汽车违章查询的特点,主要由登录与注册,汽车违章查询,汽车归属地选择,紧急处理和紧急拍照等功能模块组成。在设计和编写的过程中最大限度的满足用户的需求,所以,这个APP具有较强的实用性和针对性。下面具体介绍了各功能模块所包含的小模块的功能,具体包括:用户注册与登录功能主要是让第一次进入APP查询违章情况的用户进行账号注册,输入自己的用户名和密码,然后注册,之后登陆,进入查询界面;汽车违章查询功能是要求用户输入自己的车牌号,车架号和需要查询的地点等等的信息进行违章查询的操作;归属地选择功能主要是为了让用户选择汽车查询是的查询地点;紧急处理功能是通过一个按钮使用户进入紧急处理界面;而拍照功能是为了用户遇到紧急情况需要拍照时进行拍照的,之后图片保存到手机,比如车辆剐蹭等等小事故。1.3 设计实现的主要目标本课题研究内容为汽车违章查询APP,该APP提供了及时查到汽车违章信息的功能,方便个人日常对违章信息的查询和处理等操作。本APP开发的主要目标是实现汽车违章信息处理的实时化、系统化、规范化、自动化、达到及时查询个人汽车信息的目的,以尽快的进行相应的处理和操作。2 开发平台和开发技术的介绍2.1 Android开发平台Android一词的根本意思是指“机器人”,同时也是Google在2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成。Android一词最早出现于法国作家利尔亚当(Auguste Villiers de lIsle-Adam)在1886年发表的科幻小说未来夏娃中,其中的一个机器人名叫Android。Android的Logo是由Ascender公司设计的,诞生于2010年,其设计灵感源于男女厕所门上的图形符号,于是布洛克绘制了一个简单的机器人,它的躯干就像锡罐的形状,头上还有两根天线,Android小机器人便诞生了。Android 从面世以来到现在已经发布了近二十个版本了,手机厂商、开发者、用户之间相互依存,共同推进着Android的蓬勃发展。开发者在其中扮演着不可或缺的角色,因为再优秀的操作系统没有开发者来制作丰富的应用程序也是难以得到大众用户喜爱的,相信没有多少人能够忍受没有手机QQ、微信的手机吧。 2.2 Android的系统架构Android大体上可以分为四层架构,五块区域。它们分别是:1. Linux内核层2. 系统运行库层 3. 应用框架层 4. 应用层 2.3 Android的应用Android是一个为组件化而搭建的平台,它引入了Mash-Up的概念,具体说来,Android有四大组件四喜丸子:Activity、Service、Broadcast Receiver、Content Provider。1. ActivityActivity在四大组件中是最复杂的。从视觉效果来看,一个Activity占据当前的窗口,响应所有窗口事件,具备有控件,菜单等界面元素。从内部逻辑来看,Activity需要为了保持各个界面状态,需要做很多持久化的事情,还需要妥善管理生命周期,和一些转跳逻辑。对于开发者而言,就需要派生一个Activity的子类,然后执行上述事情。2. ServiceAndroid的Service和所有四大组件一样,其进程模型都是可以配置的,调用方和发布方都可以有权利来选择是把这个组件运行在同一个进程下,还是不同的进程下。如果一个 Service,是有期望运行在于调用方不同进程的时候,就需要利用Android提供的RPC机制,为其部署一套进程间通信的策略。3. Broadcast Receiver在Android中,每个Broadcast Receiver都可以接收一种或若干种Intent作为触发事件,当发生这样事件的时候,系统会负责唤醒或传递消息到该Broadcast Receiver,任其处置。在此之前和这以后,Broadcast Receiver是否在运行都变得不重要了。除了接受消息的一方有多种模式,发送者也有很重要的选择权。通常,发送这有两类,一个就是系统本身,我们称之为系统Broadcast消息。除了系统,自定义的应用可以放出Broadcast消息,通过的接口可以是 Context.sendBroadcast,或是Context.sendOrderedBroadcast。前者发出的称为Normal broadcast,所有关注该消息的Receiver,都有机会获得并进行处理;后者放出的称作Ordered broadcasts。4. Content ProviderContent Provider,就是Android提供的第三方应用数据的访问方案。在Android中,对数据的保护是很严密的,除了放在SD卡中的数据,一个应用所持有的数据库、文件、等等内容,都是不允许其他直接访问的,但有时候,沟通是必要的,不仅对第三方很重要,对应用自己也很重要。Andorid当为所有应用都准备了一扇窗,这就是Content Provider。应用想对外提供的数据,可以通过派生ContentProvider类, 封装成一枚Content Provider,每个Content Provider都用一个uri作为独立的标识,形如:content:/com.xxxxx。所有东西看着像REST的样子,但实际上,它比REST 更为灵活。和REST类似,uri也可以有两种类型,一种是带id的,另一种是列表的,但实现者不需要按照这个模式来做,给你id的uri你也可以返回列表类型的数据,只要调用者明白,就无妨,不用苛求所谓的REST。另外,Content Provider不和REST一样只有uri可用,还可以接受Projection,Selection,OrderBy等参数, Content Provider内部,常用数据库来实现,Android提供了强大的Sqlite支持,但很多时候,也可以封装文件或其他混合的数据。在Android中,ContentResolver是用来发起Content Provider的定位和访问的。不过它仅提供了同步访问的Content Provider的接口。但通常,Content Provider需要访问的可能是数据库等大数据源,效率上不足够快,会导致调用线程的拥塞。因此Android提供了一个AsyncQueryHandler帮助进行异步访问Content Provider。总之,在各大组件中,Service和Content Provider都是那种需要持续访问的。2.4 Android的开发2.4.1 Android的开发工具Android的开发是使用主流的Java集成开发环境eclipse。有了eclipse还不够,因为除了使用Java语言进行开发,还需要有sun公司提供的Java SDK,这其中就包括了Java Runtime Environment。另外,Android的应用程序开发还是和Java开发有区别,还需要有一个Google提供的Android ADT,有了这三个软件就可以开发Android程序了。2.4.2 Android开发平台的搭建1. Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。Eclipse最初是由IBM公司开发的替代商业软件VisualAge for Java的下一代IDE开发环境, 2003年,Eclipse 3.0选择OSGi服务平台规范为运行时架构。 2007年6月,稳定版本3.3发布。2008年6月发布代号为Ganymede的3.4版。Eclipse是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如C+和python的开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。许多软件开发商以Eclipse为框架开发自己的IDE。Eclipse 最初由OTI和IBM两家公司的IDE产品开发组创建,起始于1999年4月。IBM提供了最初的Eclipse代码基础,包括Platform、JDT 和PDE。目前已经有150多家软件公司参与到Eclipse项目中,其中包括Borland、RationalSoftware、Red Hat及Sybase等。Eclipse是一个开发项目,它其实是 Visual Age for Java的替代品,其界面跟先前的Visual Age for Java差不多,但由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。还有包括Oracle在内的许多大公司也纷纷加入了该项目,并宣称Eclipse将来能成为可进行任何语言开发的IDE集大成者,使用者只需下载各种语言的插件即可。虽然大多数用户很乐于将 Eclipse 当作 Java IDE 来使用,但 Eclipse 的目标不仅限于此。Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE)。尽管 Eclipse 是使用 Java 语言开发的,但它的用途并不限于 Java 语言;例如,支持诸如 C/C+、COBOL和 Eiffel 等编程语言的插件已经可用,或预计会推出。Eclipse 框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。基于 Eclipse 的应用程序的突出例子是 IBM 的 WebSphereStudio Workbench,它构成了 IBM Java 开发工具系列的基础。例如,WebSphere Studio Application Developer 添加了对 JSP、servlet、EJB、XML、Web 服务和数据库访问的支持。2. Genymotion提供了Android虚拟环境,是一种工具。Genymotion支持Windows、Linux和Mac OS等操作系统,容易安装和使用:按简单的安装过程,选择一款Android虚拟设备,开启后就可以使用Genymotion。genymotion安卓模拟器其实不是普通的模拟器,严格来说,genymotion是虚拟机,被网传定义为默契,genymotion虚拟机希望能够给你带来最好的Android模拟体验,目前具备以下特性:支持OpenGL加速,提供最好的3D性能体验;可以从Google Play安装应用;支持全屏并改善了使用感受;全控制;可同时启动多个模拟器;支持传感器管理,如电池状态、GPS、Accelerator加速器;支持Shell控制模拟器;完全兼容ADB;管理设备;易安装;兼容Microsoft Windows 32/64bits, Mac OSX 10.5+ and Linux 32/64 bits;可以配置模拟器参数,如屏幕分辨率、内存大小、CPU数量;轻松下载、部署最新的Genymotion虚拟设备;从Eclipse启动虚拟设备;使用Genymotion测试应用。3 需求分析3.1 现状分析现在的社会,随时中国的崛起,国家的经济实现得到提高,拥有私家车的中国家庭也越来越多了,甚至一个中国家庭的私家车都不止一辆,所以交通管理部门的工作量和工作压力大大提升,交警的压力也越来越大,传统的电子监控系统已经不能适应当前的交通状况。汽车违章情况是现代交通中很严重的一个问题,因而由这个方面带来的交通安全问题也更加的严重和突出。交管局由于人力资源有限,不可能对所有的违章监督实现全天候,全方位的监督与管理,所以必须依靠现代化技术手段来监督和管理交通,这样我们的城市才会更加的井然有序。3.2 系统要解决的问题随着城市的规模不断扩大,汽车数量急剧增加,有关汽车违章的各种信息也成倍增长。面对庞大的信息量,利用计算机技术、网络技术、通信技术,实现计算机综合信息的联网管理,已成为各地市交通管理工作现代化的迫切需要,汽车违章查询APP也成为了不可或缺的辅助管理手段。因此本汽车违章查询APP将要解决如下问题:实现用户注册与登录的功能,做到用户自己管理自己的账号和汽车查询;查询汽车在何时何地违章,违章的原因和罚款金额;同时提供拍照和行车记录仪的功能。3.3 系统要实现的功能及实现的方法3.3.1 本系统要实现的功能用户注册:用户在第一次进入APP的时候需要在界面输入用户名和密码等信息,点击注册按钮,会显示注册成功;用户登录:用户输入用户名和密码,点击登录,进入欢迎界面;进入查询界面:用户点击开始查询进入查询界面;查询违章信息:输入查询省份,查询城市,省份简称,六位车牌号,车架号,发动机号,点击开始查询;拍照:点击记录按钮进入照相机界面,实现拍照和摄像功能3.3.2 实现方法本APP的开发工具选用Eclipse工具,genymotion做为虚拟机。该系统使用Java编程语言,运用软件工程思想方法,对系统进行快速有效开发。APP从以下几个方向来实现:xml文件:在layout文件下设计多个界面文件;Java文件:实现各个功能;SQLite数据库:记录用户名和密码;4 概要设计通过对汽车查询系统的需求分析,了解了系统的总体功能结构和模块,以及各个模块要实现什么功能,以下介绍了系统的总体功能模块和系统总体架构。4.1 系统总体功能结构通过对汽车查询的需求分析,了解了本系统的基本逻辑结构和功能。本系统实现了4个功能模块,分别是选择查询地功能,选择省份缩写功能,紧急处理功能和违章结果显示功能。系统功能模块图如图4-1所示:用户注册与登录汽车违章查询选择省份缩写违章结果显示紧急处理功能选择查询地功能图片显示拍照功能图4-1 系统功能模块图4.2 系统总体架构汽车违章查询的设计和实现的工作模式是客户-服务器模式。服务端在服务器上运行,服务端是汽车违章查询的网络平台,本文中设计的汽车违章查询软件则属于客户端, 是基于Android手机平台的,使用了网站车首页的api接口。综上,我实现该系统的方式,主要由服务、 网络和客户三部分构成, 其中服务器由汽车违章查询服务器和中间服务器构成, 网络主要有Internet、 3G/WLAN构成。详细了解汽车违章查询接口, 并获得授权访问。同时,必须很好的设计客户软件和中间服务器间的访问接口,此外,在客户软件在提供的用户使用时, 我们必须建立好中间服务器。目前考虑到实际需要, 中间的服务器没有自己设计, 选择了汽车违章查询接口来实现我们的系统。4.2.1 用户注册与登录图4-2用户注册与登录流程图4.2.2 违章汽车的查询 用户输入自己的车牌号,车架号,所查汽车的归属地,所查汽车违章的省份和城市,然后点击“开始查询”按钮进行查询。4.2.3 紧急处理-拍照紧急情况处理是汽车违章查询APP中的重要组成部分。它起到了警示违章用户,提醒他们及时处理紧急情况的作用,也提高了汽车违章查询APP的及时性和精确性。5 详细设计基于Android的汽车违章查询的设计与实现的APP旨在让用户方便快捷及时的查询自己的汽车的违章情况,从而做到及时的采取补救方法,比如交罚款等等,同时也会增强交通方面的安全意识。下面就来具体介绍APP的设计与实现的过程。5.1 用户的注册与登录由于汽车违章查询的APP是针对手机用户服务的,所以在首页用户要进行注册与登录,以便于统一管理。5.1.1 界面设计图5-1 注册与登录界面要做到如上图5-1所示的界面:首先用一个相对布局实现全局的布局,然后在使用若干线性布局对总体进行分块布局,在各个布局里面添加两个TextView和EditText,,用来显示“用户名”和“密码”,以及相应需要输入的用户名和密码;另外再添加四个button按钮,前三个用来实现用户在输入用户名和密码之后的登录,注册和重置功能,另一个按钮用来实现跳转到紧急事件处理的界面;最后在界面上方添加一个TextView,用来显示“欢迎登陆”。5.1.2 功能设计首先输入用户名和密码,点击注册的同时会创建SQLite数据库,同时创建表,此时继承SQLiteOpenHelper方法;当点击登录系统会检测数据库里面的用户名和密码是否存在,若存在,则跳转到汽车违章查询的界面。若没有,则会提醒没有这个用户,用户可以先注册在登录。要实现用户的注册与登录,就会涉及到数据库的使用,本APP使用的数据库是SQLite数据库。SQLite数据库是一种轻量级别的数据库,是用C语言编写的开源嵌入式数据库引擎。它的占用资源比较低,还是开源的,任何人都可以使用。所以它通常做为手机操作系统的本地数据库,Android运行的环境就包含了完整的SQLite。其部分功能代码如下:LoginActivity.java:public class LoginActivity extends Activity private EditText mAccout,mPwd;private Button mLoginButton,mregisterButton,mcancleButton;private View loginview,loginSuccessview;private UserDataManager userdatamanager;Overrideprotected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState);setContentView(R.layout.login_main);mAccout=(EditText)findViewById(R.id.login_edit_account);mPwd=(EditText)findViewById(R.id.login_edit_pwd);mLoginButton=(Button)findViewById(R.id.login_btn_login);mregisterButton=(Button)findViewById(R.id.login_btn_register);mcancleButton=(Button)findViewById(R.id.login_btn_cancle);mLoginButton.setOnClickListener(mListener);mregisterButton.setOnClickListener(mListener);mcancleButton.setOnClickListener(mListener);if(userdatamanager = null )userdatamanager= new UserDataManager(this);userdatamanager.openDataBase();OnClickListener mListener=new OnClickListener()Overridepublic void onClick(View v) switch(v.getId()case R.id.login_btn_login:login();break;case R.id.login_btn_register:register();break;case R.id.login_btn_cancle:cancle();break;private void login() if(userAndpwd()String name=mAccout.getText().toString().trim();String pwd=mPwd.getText().toString().trim();int result=userdatamanager.findUserByNameAndPwd(name, pwd);if(result = 1)Toast.makeText(getApplicationContext(),恭喜,登录成功!,1).show();Intent intent=new Intent(LoginActivity.this,MainActivity.class);intent.putExtra(xinxi,name+欢迎!);startActivity(intent);else if(result=0)Toast.makeText(getApplicationContext(), getString(R.string.login_fail), Toast.LENGTH_SHORT).show();private boolean userAndpwd() if (mAccout.getText().toString().trim().equals() Toast.makeText(getApplicationContext(),getString(R.string.account_empty),Toast.LENGTH_SHORT).show();return false; else if (mPwd.getText().toString().trim().equals() Toast.makeText(getApplicationContext(), getString(R.string.pwd_empty),Toast.LENGTH_SHORT).show();return false;return true;private void cancle() mAccout.setText();mPwd.setText();private void register() if (userAndpwd() String userName = mAccout.getText().toString().trim();String userPwd = mPwd.getText().toString().trim();/check if user name is already existint count=userdatamanager.findUserByName(userName);if(count0)Toast.makeText(getApplicationContext(),注册失败,该用户已存在,Toast.LENGTH_SHORT).show();return ;UserData mUser = new UserData(userName, userPwd);userdatamanager.openDataBase();long flag = userdatamanager.insertUserData(mUser);if (flag = -1) Toast.makeText(getApplicationContext(), getString(R.string.register_fail),Toast.LENGTH_SHORT).show();elseToast.makeText(getApplicationContext(), getString(R.string.register_sucess),Toast.LENGTH_SHORT).show();Overridepublic boolean onCreateOptionsMenu(Menu menu) / Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;5.2 查询首先进入查询界面,如图所示:图5-2 汽车违章查询界面要做成此界面,需要再一个相对布局里面设计几个线性布局,然后分别插入相应的textview和editview输入相应的信息,在加入imageview导入图片来进行指导作用,最后再加上button按钮起到查询的作用。其次它的功能实现是通过车首页的汽车违章查询接口实现的,我在车首页申请了一个appID和appKey,通过intent方法发起对接口的访问,接口通过访问请求之后返回数据,数据解析之后显示在违章结果界面的listview中。其部分功能代码如下:MainActivity.java:public class MainActivity extends Activity private String defaultChepai = 晋; private TextView short_name;private TextView query_city;private View btn_cpsz;private Button btn_query;private EditText chepai_number;private EditText chejia_number;private EditText engine_number;/ 行驶证图示private View popXSZ;Overrideprotected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState);requestWindowFeature(Window.FEATURE_NO_TITLE);setContentView(R.layout.csy_activity_main);Button btn = (Button) findViewById(R.id.button1);btn.setOnClickListener(new OnClickListener()Overridepublic void onClick(View v) Intent intent = new Intent(MainActivity.this,MActivity.class);startActivity(intent););/getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,R.layout.csy_titlebar);/ 标题TextView txtTitle = (TextView) findViewById(R.id.tx

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论