《二维码电子请柬生成与扫描系统设计本科毕业设计cbcc.docx》由会员分享,可在线阅读,更多相关《二维码电子请柬生成与扫描系统设计本科毕业设计cbcc.docx(38页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、毕 业 论 文文(设 计计)题目:二二维码电电子请柬柬生成与扫扫描系统统设计姓 名 岳栋栋栋 学 号 2000900017112633 学 院 控制制科学与与工程学学院 专 业 自动化化 年 级 20009级 指导教师师 赵赵子健 220133年 55月 220 日日摘 要随着计算算机技术术和图像像编码技技术的不不断发展展与进步步产生了了一种自自动识别别技术,既既条码技技术。二二维码是是条码的的一种,由由于它信信息容量量大、容错能能力强,可靠性性高、成本低低,近年年来得到到了广泛泛应用。随随着智能能手机的的普及,AAndrroidd平台以以其开放放性、良良好的用用户体验验成为了了智能手手机主力
2、力的操作作系统。结结合二维维码技术术,在AAndrroidd平台上上进行相相关软件件的开发发可以进进一步普普及二维维码技术术应用,方方便数据据信息的的交流。本项目就就是用JJavaa语言,通通过Ecclippse平平台设计计了一个个适用于于Anddroiid平台台的基于于二维码码生成与与解码的的一个应应用软件件。本软软件可以以将一些些信息加加密后生生成为二二维码,生生成的二二维码可可以应用用在电子子请柬中中。然后后再用本本软件扫扫描电子子请柬中中的二维维码,可可以获得得加密前前的信息息,并且且确认来来着的身身份。本本软件可可以防止止不被邀邀请的人人混入一一些场合合,应用用性较强强。关键词:二维
3、码码,安卓卓,手机机软件ABSTTRACCTWithh thhe cconttinuuouss deevellopmmentt off coompuuterr teechnnoloogy andd immagee coodinng ttechhnollogyy a kinnd oof aautoomattic ideentiificcatiion tecchnoologgy ccallled barr coode tecchnoologgy iimerrgedd. Quuickk Reespoond codde iis oone kinnd oof tthe barr coode.In rec
4、centt yeearss ,iits wwideely useed bbecaausee off itts llargge iinfoormaatioon ccapaacitty, fauult tolleraant abiilitty, higgh rreliiabiilitty aand loww coost. Wiith thee poopullariity of smaartpphonnes, Anndrooid plaatfoormhhas beccomee thhe mmainn smmarttphoone opeerattingg syysteem wwithh itts oo
5、pennnesss aand goood uuserr exxperriennce. Thee deevellopmmentt off apppliicattionns rrelaatedd too QRRcodde oon tthe Anddroiid pplattforrm ccan makke ccodee teechnnoloogy morre ppopuularr annd mmakee daata commmunnicaatioon mmoree coonveenieent.In tthiss proojecct, a aappllicaatioon bbaseed oon tth
6、e genneraate andd enncodde oof tthe Qrccodee onn thhe AAndrroidd pllatfformm waas ddesiigneed aand devveloopedd.Thhis apppliccatiion wass deevellopeed oon EEcliipsee wiith Javva pproggrammminng llangguagge. Thiis ssofttwarre ccan putt soome infformmatiion in aa qrr coode thaat ccan be useed iin tthe
7、 eleectrroniic iinviitattionn. TThenn yoou ccan scaan tthe qr codde iin tthe eleectrron invvitaatioon tto gget thee orrigiinall innforrmattionn annd cconffirmm thhe iidenntifficaatioon oof tthe vissitoor. Thiis ssofttwarre ccan preevennt ppeopple whoo arre nnot invviteed eenteerinng ssomee occcassio
8、nns.KEYWWORDDS: Qrcodde,AAndrroidd,apppliicattionn目录第一章绪绪论111 系统开开发背景景以及意意义11.1.1 系系统开发发背景111.1.2 系系统开发发意义111.1.3 二二维码介介绍212 开发工工具介绍绍31.2.1 JJDK简简介31.2.2 AAndrroidd SDDK简介介31.2.3 EEcliipsee简介31.2.4 AADT简简介413 项目目开发环环境41.3.1 硬硬件环境境41.3.2 软软件环境境41.4 环境搭搭建41.4.1 安安装配置置JDKK41.4.2 安安装配置置Anddroiid平台台SDKK5
9、1.4.3 下下载安装装集成开开发环境境Ecllipsse51.4.4 安安装设置置ADTT插件5第二章系系统的总总体设计计62.1 系统模模块结构构设计662.2 计算机机物理系系统的配配置方案案设计66第三章系系统的详详细设计计83.1 系统流流程图883.2 界面设设计9第四章应应用程序序的编程程实现1114.1 Anddroiid应用工工程文件件组成1114.2 Anddroiid应用用程序组组成1224.3 Inttentt的使用用124.4 调用ZXXingg134.5 编程实实现1444.5.1 编编写配置置文件1144.5.2 编编写布局局文件1154.5.3 编编写源程程序1
10、66第五章应应用程序序的测试试185.1 在模拟拟器上测测试1885.2 在目标标设备上上测试1185.2.1 软软件安装装测试1185.2.2 生生成二维维码测试试195.2.3 扫扫描二维维码测试试19结论211致谢222参考文献献23第一章 绪论论11 系统开开发背景景以及意意义1.1.1 系系统开发发背景智能手机机是指具具有独立立的操作作系统,可可以由用用户自行行安装软软件、游游戏等第第三方服服务商提提供的程程序,并并可以通通过移动动通讯网网络来实实现无线线网络接接入的这这样一类类手机。智能手机具备无线接入互联网的能力,具有PDA的功能,具有开放性的操作系统,人性化,功能强大,扩展性能
11、强,第三方软件支持多。这些优点决定了智能手机必将在市场上占有一席之地,智能手机市场的潜力不可估量。Andrroidd智能操操作系统统是一种种基于LLinuux的自自由及开开放源代代码的操操作系统统,主要要使用于于移动设设备,是是由谷歌歌、开放放手持设设备联盟盟联合研研发,谷谷歌独家家推出的的智能操操作系统统。Anndrooid平平台有多多种优势势,首先先在开放放性方面面,Anndrooid平平台允许许任何移移动终端端厂商加加入到AAndrroidd联盟中中来。显显著的开开放性可可以使其其拥有更更多的开开发者。其其次,用用户可以以更加方方便地连连接网络络,运营营商的制制约减少少。第三三,安卓卓平
12、台有有丰富的的相关硬件件。第四四,Anndrooid平平台提供供给第三三方开发发商一个个十分宽宽泛、自自由的环环境。Anddroiid平台台手机可可以无缝缝结合优优秀的GGooggle服服务。这这种种优优势决定定了安卓卓逐渐成成为全球球最受欢欢迎的智智能手机机操作系系统。220111年初数数据显示示,仅正正式上市市两年的的操作系系统Anndrooid已已经超越越称霸十十年的塞塞班操作作系统,跃跃居全球球第一。条码技术术是在计计算机应应用中产产生并发发展起来来的,具具有输入入快、准准确度高高、成本本低、可可靠性强强等优点点,广泛应应用于商商业、邮邮政、图图书管理理、仓储储、工业业生产过过程控制制
13、、交通通等领域域。条码码分为一一维码和和二维码码,一维维条形码码只是在在一个方方向(一一般是水水平方向向)表达达信息,而而在垂直直方向则则不表达达任何信信息,数数据容量量小,损损坏后不不能读取取,这些些缺点决决定了二二维码的的诞生以以及二维维码广阔阔的应用用前景。1.1.2 系系统开发发意义本项目设设计了个个安装在在Anddroiid平台台智能手手机的电电子请柬柬系统。可可以完成成二维码码生成,二二维码扫扫描,以以及信息息核实。二二维码信信息容量量大、编编码范围围广、容容错能力力强、译译码可靠靠度高、成成本低、容容易制作作,这些些优点决决定了二二维码特特别适用用于表单单、安全全保密、追踪、证照
14、、存货盘点、资料备援等方面。二维码电子请柬服务,是二维码技术在移动商务服务中的另一种应用,主要用于二维码会议。二维码电子请柬系统属于手机二维码应用,它将现代移动通信技术和二维码技术结合在一起。通过本系统把请柬信息编码成为一个二维码图形,可以通过短信等方式发送至受邀者的手机上。然后可以通过本系统对受邀者手机上收到的二维码图形进行扫描验证。它不仅节约了成本,更重要的是节省时间提高效率方便使用,同时还非常环保和时尚。而且避免了主办方现场核对信息时手忙脚乱的尴尬,而且非常安全,有效核实身份,杜绝误闯者。1.1.3 二二维码介介绍二维码最最早起源源于日本本,它是是用特定定的几何何图形按按一定规规律在平平
15、面(二二维方向向)上分分布的黑黑白相间间的图形形。二维维条码与与一维条条码相比比具有高高容量、高高密度、纠纠错能力力强、安安全强度度高等特特点,不不仅可以以存储传传统的字字符数字字等文本本信息,还还可以存存储图像像等高容容量的信信息。二二维码有有堆叠式式二维码码和矩阵阵式二维维码两种种。其中矩阵阵式二维维条码以以矩阵的的形式组组成,在在矩阵相相应元素素位置上上用“点点”和“空空”的排排列组成成代码,这这种排列列组合确确定了矩矩阵式二二维码所所代表的的意义,“点”表表示二进进制“11”,“空空”表示示二进制制“0”。矩矩阵式二二维码是是以计算机机图像处处理技术术、组合合编码原原理等为为基础的的一
16、种新新型图形形符号识识读处理理码制,其其中具有有代表性性的有:Codde OOne、MMaxii Coode、QQR CCodee等。QR CCodee是二维维码的一一种。它它是由日日本Deensoo公司于于19994年99月研制制的一种种矩阵二二维码符符号,它它除具有有一维条条码及其其它二维维条码所所具有的的信息容容量大、可可靠性高高等优点点外,还还可以超超高速识识读,它它纠错能能力强,能能够有效效地表示示中国汉汉字和日日本汉字字2。由于于QR码码具有对对汉字信信息进行行独特优优化处理理的功能能,符合合汉字国国家使用用习惯,QQR码拥拥有一定定的持续续发展潜潜力。QR码的的基本构构造如图图1
17、所示示。其中中各部分分有各部部分的功功能:位位置探测测图形、位位置探测测图形分分隔符、定定位图形形用于对对二维码码的定位位,对每每个QRR码来说说,位置置都是固固定存在在的,只只是大小小规格会会有所差差异;规规格确定定,校正正图形的的数量和和位置也也就确定定了;格格式信息息表示改改二维码码的纠错错级别,分分为L、MM、Q、HH;版本本信息即即二维码码的规格格,QRR码符号号共有440种规规格的矩矩阵(一一般为黑黑白色),从从2121(版版本1),到到17771777(版本本40),每每一版本本符号比比前一版版本 每每边增加加4个模模块。数数据和纠纠错码字字表示了了实际保保存的二二维码信信息,和
18、和纠错码码字(用用于修正正二维码码损坏带带来的错错误)。图1 QR码码的基本本构造12 开发工工具介绍绍1.2.1 JJDK简简介JDK全全称是JJavaa Deevellopmmentt Kiit,是Suun针对对Javva开发发的产品品。JDDK 是是整个JJavaa的核心心,包括括了Jaava运运行环境境、Jaava工工具和JJavaa基础类类库。JJDK有有使用于于各种设设备各种种环境的的版本。没有JDK的话,无法编译Java程序,如果想只运行Java程序,要确保已安装相应的JDK。JDK的基本组件包括javac(编译器),jar (打包工具),javadoc(文档生成器),jdb d
19、ebugger(查错工具),java (运行编译后的java程序),appletviewer(小程序浏览器)Javap(Java反汇编器),Jconsole(调试和监控工具)等。1.2.2 AAndrroidd SDDK简介介SDK全全称是ssofttwarre ddeveeloppmennt kkit,即即软件开开发工具具包。SSDK是是指软件件开发工工程师用用于为特特定的软软件包、软软件框架架、硬件件平台、操操作系统统等建立立应用软软件的开开发工具具的集合合。Anndrooid SDKK 指的的是Anndrooid专专属的软软件开发发工具包包。1.2.3 EEcliipsee简介Eclii
20、psee是著名名的跨平平台的自自由集成成开发环环境(IIDE), 是一个基于Java的、开发源代码的可扩展开发平台。本质上它只是一个框架和一组服务,用户通过插件组件构建开发环境。Eclipse还包括插件开发环境,这个组件允许希望扩展 Eclipse的软件开发人员构建与Eclipse环境无缝集成的工具。Eclipse中的每样东西都是插件,对于给Eclipse提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。由于任何人都可以免费得到Eclipse的源码,并可以在此基础上开发各自的插件,因此越来越受人们关注。Ecliipsee的设计计思想是是:一切切皆插件件
21、。除EEcliipsee基本内内核,比比如图形形APII (SSWT/Jfaace)、Jaava开开发环境境插件(JDTT)、插件开开发环境境(PDDE),EEcliipsee其它所所有功能能都以插插件的形形式附加加于Ecclippse上上。1.2.4 AADT简简介ADT全全称是AAndrroidd Deevellopmmentt Tooolss,即安安卓开发发工具。目前Android开发所用的开发工具是Eclipse,在Eclipse编译IDE环境中,安装ADT,为Android开发提供开发工具的升级或者变更,简单理解为在Eclipse下开发工具的升级下载工具。ADT是Android在Ec
22、lipse上的开发工具。13 项目目开发环环境1.3.1 硬硬件环境境联想G4450电电脑一台台三星s558300i手机机一部1.3.2 软软件环境境操作系统统:wiindoowsXXP(332 bbit)开发工具具:JDDK1.7、EEcliipsee-TAADP、AAndrroidd SDDK、AADT1.4 环境搭搭建1.4.1 安安装配置置JDKK在网站hhttpp:/wwww.orraclle.ccom/tecchneetwoork/javva/iindeex.hhtmll下载适适合目标标平台的的JDKK版本。下下载完成成后,双双击并根根据提示示安装JJDK。安安装结束束后,还还要配
23、置置JDKK环境变变量,步步骤如下下:我的的电脑属性高级环境变变量,然然后在系系统变量量中设置置3项属属性,JJAVAA_HOOME,PATTH,CCLASSSPAATH(大小写写无所谓谓),若若已存在在则点击击“编辑辑”,不不存在则则点击“新新建”:JAVVA_HHOMEE指明JJDK安安装路径径,Patth使得得系统可可以在任任何路径径下识别别javva命令令,设为为:%JJAVAA_HOOME%biin;%JAVVA_HHOMEE%jjrebinnCLAASSPPATHH设为:.;%JAVVA_HHOMEE%llib;%JAAVA_HOMME%libbtooolss.jaar (要加.表
24、示当当前路径径)。1.4.2 安安装配置置Anddroiid平台台SDKK在Anddroiid DDeveelopperss下载aandrroidd SDDK,下下载完成成后解压压到目标标文件夹夹。与JDDK设置置相同,AAndrroidd SDDK安装装目录下下的“toools”子文件件夹的路路径需要要添加到到系统的的“PATTH”环境变变量中。SSDK下下载戒烟烟后,其其中包括括非常丰丰富的开开发资源源,包括括丰富的的辅助工工具和完完备的开开发参考考。1.4.3 下下载安装装集成开开发环境境Ecllipsse到htttp:/wwww.eecliipsee.orrg/ddownnloaads
25、下下载Ecclippse。EEcliipsee工具的的下载文文件也是是压缩文文件,直直接解压压后就可可以使用用。1.4.4 安安装设置置ADTT插件安装ADDT插件件有两种种办法,一一种是通通过网络络安装,另另一种是是通过本本地文件件安装。在在此选择择第二种种方法。步步骤如下下:启动动Ecllipsse,选选择HeelpSofftwaare UpddateesAvaailaablee SooftwwareeAddd SiiteAchhievve。然然后在弹弹出的页页面选择择ADTT下载文文件,点点击OKK,完成成ADTT插件的的安装。AADT插插件安装装完毕后后,重启启Ecllipsse,选选
26、择WiindoowPreeferrencces,进入首首选项设设置页面面。选择择左侧的的“Anddroiid”项目,按按照要求求选择AAndrroidd SDDK的位位置,然然后点击击OK。至至此,开开发环境境安装完完毕。第二章 系统统的总体体设计总体设计计即对有有关系统统全局问问题的设设计,也也就是设设计系统统总的处处理方案案,又称称系统概概要设计计。总体体设计包包括系统统模块结结构设计计和计算算机物理理系统的的配置方方案设计计。在进进行总体体设计时时,还要要进行计计算机物物理系统统具体配配置方案案的设计计。2.1 系统模模块结构构设计系统模块块结构设设计的目目的是划划分子系系统并确确定其模
27、模块结构构,最后后画出模模块结构构图。要要想进行行好的模模块设计计,必须须考虑如如何将一一个系统统划分成成多个子子系统;每个子子系统如如何划分分成多个个模块;如何确确定子系系统之间间、模块块之间传传送的数数据及其其关系。顾名思义义,基于于二维码码的电子子请柬生生成与扫扫描系统统有两个个子系统统,二维维码的生生成系统统和二维维码的扫扫描系统统。其模模块划分分分别如如图2(aa)、图图2(bb)所示示。选择“扫描二维码”选择“生成二维码”通过一个文本框输入信息加密信息并通过Intent传递信息调用BarcodeScanner扫描二维码将二维码解码后的信息传递到一个字符串显示解密后的信息,判断来宾是
28、否被邀请者调用BarcodeScanner生成二维码图2(aa) 子子系统模模块图 图22(b) 子系统统模块图图2.2 计算机机物理系系统的配配置方案案设计进行总体体设计除除了进行行系统模模块结构构设计,还要进行计算机物理系统具体配置方案的设计。本项目用到了一部三星S5830i手机,一台windowsXP系统的电脑。另外还需要自己搭建开发平台,用到了JDK,Android SDK,Eclipse,ADT。具体的平台搭建在第一章有详细介绍。做条形码生成和扫描,一般要用到ZXing。ZXing有多种复用方式,在本项目中,选择的方式是在手机上安装Zxing库中的相关软件,即使用于Android平台
29、的BarcodeScanner。然后在自己的应用中,通过Intent调用ZXing的生成条码或者扫描条码的Activity,然后将结果返回自己的Activity。第三章 系统统的详细细设计3.1 系统流流程图系统流程程图(SSysttem Floowchhartt)是描描绘系统统物理模模型的传传统工具具。系统统流程图图用图形形符号以以黑盒子子形式描描绘系统统里面的的每个部部件(程序、文文件、数数据库、表格、人工过程等),表达信息在各个部件之间流动的情况。本系统的系统流程图如图3: 结束输出“警告”输出“匹配” 开始输入请柬内包含的信息将信息加密调用BarcodeScanner生成二维码输出“匹
30、配”调用BarcodeScanner扫描二维码将解码后的信息传入TextView将解码后的信息传入TextView是否含有加密字符串否输出“警告”是 结束图3 系系统流程程图3.2 界面设设计界面设计计是人与与机器之之间传递递和交换换信息的的媒介。UI即用户界界面。UUI设计计则是指指对软件件的人机机交互、操操作逻辑辑、界面面美观的的整体设设计。好好的UII设计要要充分考考虑到用用户的感感受,让让软件的的操作变变得舒适适、简单单、自由由。此系统有有如下几几个界面面如图44所示:界面一一中,TTexttVieew1显显示了一一些软件件介绍信信息。在在界面一一中选择择Butttonn1,就就出现了
31、了界面二二。界面面二中,EEdittTexxt1中中,可以以输入文文本,以以生成二二维码,选选择Buuttoon3,跳跳转到生生成的二二维码。在在界面二二中,选选择Buuttoon2,则则跳转到到界面三三,选择择Butttonn4,则则出现二二维码扫扫描界面面,扫描描结果返返回到界界面三中中的TeextVVieww3,对对结果进进行检验验后,在在界面三三的TeextVVieww4中,返返回“匹配”或者“警告”。TextView1Button1 EditText1Button3Button2图4(aa) 界面面一 图44(b) 界面二二Button4TextView3TextView2图4(cc
32、) 界界面三第四章 应用用程序的的编程实实现4.1 Anddroiid应用用工程文文件组成成Andrroidd应用工工程文件件(如图图5所示示)主要要由以下下工程文文件组成成:1.srrc既源源文件目目录。2.geen目录录,包含RR.jaava文文件,它由EEcliipsee自动生生成和修修改,不不需要去去维护。3.anndrooid库库。4.asssetts目录录,存放多多媒体等等文件。5.rees目录录,存放应应用用到到的资源源文件。6.drrawaablee目录,存放图图片资源源,分别为为高中低低三个分分辨率。7.laayouut目录录,放置布布局文件件,均为为.xmml文件件。8.v
33、aaluees目录录,放置字字符串(strringg.xmml),颜色(collorss.xmml),数组(arrrayss.xmml)。9.AnndrooidMManiifesst.xxml.相当于于应用的的配置文文件,我们要要在这个个文件中中声明应应用的名名称,所所有的AActiivitty,SServvicee,Reecivver等等。图5 工工程文件件目录4.2 Anddroiid应用用程序组组成一个典型型的Anndrooid应应用程序序通常由由5个组组件组成成,即AActiivitty、IInteent andd Inntennt FFiltterss、Seerviice、BBroa
34、adcaastIInteentRReceeiveer、CConttenttProovidder。Actiivitty是这这5个组组件中最最常用的的,程序序中Acctivvityy通常的的表现形形式是一一个单独独的界面面。每个个Acttiviity都都是一个个单独的的类,它它扩展实实现了AActiivitty基础础类。这这个类显显示为一一个由VViewws组成成的用户户界面,并并响应事事件。大大多数程程序有多多个Acctivvityy。另一个比比较常用用的类就就是Inntennt aand Inttentt Fiilteers。AAndrroidd通过一一个专门门的Inntennt类来来进行界界
35、面的切切换,IInteent描描述了程程序想做做什么。有个相关的类叫IntentFilter。Intent是一个请求来做什么事情;IntentFilter则描述了一个Activity(或下文的IntentReceiver)能处理什么意图。系统通过解析传递进来的Intent来完成Activity的切换。使用startActivity()方法来启用新的Activity。4.3 Inttentt的使用用Inteent是是一个对对象,它它可以解解决Acctivvityy之间的的相互跳跳转、相相互传递递数据。解决了Android应用的各项组件之间的通讯。Intent负责对应用中一次操作的动作、动作涉及数
36、据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用14。一个Inntennt对象象包括一一组信息息,主要要的包括括:1Coompoonennt nnamee,它决决定从一一个Acctivvityy究竟启启动哪个个组件;2Acctioon,决决定了启启动另一一个Acctivvityy后,传传递进入入一个IInteent方方法进来来,然后后这个AActiivitty要做做的动作作;3Daata,是是从一个个Acttiviity想想向另一一个Acctivvityy传递的的数据。4Exxtraas,是是额外的的一些信信
37、息,即即键值对对。可以以在一个个Acttiviity中中存放键键值对,然后通过Intent对象在另一个Activity中将这个键值对取出来。在多个AActiivitty的跳跳转过程程中,IInteent起起到了非非常重要要的作用用。要想想实现从从Acttiviity11跳转到到Acttiviity22,就要要调用AActiivitty1的的staartAActiivitty()方法传传递一个个inttentt对象进进来,而而究竟跳跳转到哪哪个Acctivvityy,又将将有什么么动作,主主要是由由inttentt对象决决定。使用Inntennt实现现Acttiviity11跳转到到Acttiv
38、iity22的主要要代码如如下:Inteent inttentt=neew IInteent();inteent.settClaass(Acttiviity11.thhis,Acttiviity22.cllasss);starrtAcctivvityy(inntennt);使用Inntennt将AActiivitty1中中的键值值对传递递进入AActiivitty2的的主要代代码如下下:在Acttiviity11中编写写有关代代码Inteent inttentt=neew IInteent();inteent.puttExttra(namme,vvaluue);inteent.settClaa
39、ss(Acttiviity11.thhis,Acttiviity22.cllasss);starrtAcctivvityy(inntennt);在Acttiviity22中调用用gettInttentt()方方法得到到传递进进入Acctivvityy2的iinteentInteent inttentt=geetInntennt();4.4 调用ZZXinng第一章已已经讲过过anddroiid众多多优点中中的一个个,就是是Anddroiid提供供了一种种机制,可可以通过过Inttentt复用多多个应用用的界面面,可以以无缝结结合优秀秀的Goooglle服务务。比如如可以在在自己的的应用中中调用
40、条条形码识识别程序序,然后后返回条条形码的的结果。不不过呢,这这需要系系统必须须事先在在手机上上安装ZZXinng的条条码扫描描工具。ZXinng是一一个开放放源码的的,用JJavaa实现的的多种格格式的11D/22D条码码图像处处理库,它包含了联系到其他语言的端口,可实现的条形码编码和解码。Zxing提供了程序的核心代码、适用于J2SE客户端的程序、适用于Android客户端的程序(即BarcodeScanner),而且通过Intent支持Android程序和BarcodeScanner的集成。ZXing提供了一个集成API,使用者可以通过这个集成API调用ZXing的相应Activity。
41、本项目就就是利用用了Zxxingg提供的的BarrcoddeSccannner,以以及ZXXingg通过IInteent支支持appp和BBarccodeeScaanneer集成成的特点点。当项项目需要要生产或或者扫描描二维码码的时候候,Acctivvityy通过IInteent调调用BaarcoodeSScannnerr中的相相应的方方法,就就能实现现相应的的功能,调调用结束束后,然然后再讲讲结果返返回到相相应的AActiivitty。通通过Inntennt传递递数据和和信息的的主要代代码见下下文4.5.33。4.5 编程实实现4.5.1 编编写配置置文件本项目用用到了33个Acctivvi
42、tyy。在AAndrroiddMannifeest.xmll注册如如下:其中打开开应用程程序,首首先进入入的Acctivvityy是含有有以下语语句的AActiivitty。4.5.2 编编写布局局文件布局文件件,即为为ress文件夹夹中的llayoout文文件。AAndrroidd平台定定义了线线性布局局、相对对布局、绝绝对布局局、框布布局和表表格布局局这五种种布局类类型。在在本项目目的三个个Acttiviity中中,我们们选择使使用线性性布局。线线性布局局就是将将容器内内的子组组件按照照直线进进行摆放放的一种种方式。通通过布局局文件,我我们摆放放了各个个Acttiviity中中的各个个组件,并并且设置置好了组组件的长长、宽、内内容等属属性。一个完整整的布局局文件如如下:LinnearrLayyouttxmllns:anddroiid=htttp:/m/appk/rres/anddroiidandrroid