编译google Zxing,实现安卓一、二维码的扫描与生成

  • Post author:
  • Post category:其他



google Zxing是谷歌的一个开源项目,可以用来解析、生成条形码(一维码)和二维码。这个项目可以从github下载。


项目地址:



https://github.com/zxing/zxing



然而,直接下载的是不带有jar包的,都是一堆堆源代码,以及测试所用的图片(占据了很大的空间,zip包大部分东西都被它吃了,有100M以上)。


谷歌提供了maven在线仓库,



http://repo1.maven.org/maven2/com/google/zxing/



在这里可以下载到已经编译好的各种jar以及相关jardoc等。


然而,并不是最新的,只更新到了3.2.1。于是,我们可以根据源码自己手动编译一个最新版本




我下载了master分支版本的

项目源码,文件名形如:



zxing-master.zip




解压到F:/space



生成的文件路径:



F:/space/zxing-master




项目目录如下图:







core文件夹下是项目最主要的代码,android-core下是安卓的代码,只有单单的一个CameraConfigurationUtils.java文件,相机的工具类,都可以直接使用,不用编译成jar包了。


最主要的是编译好core文件夹下的东西。


需要的工具:M


aven,一个管理项目的构建,报告和文档的软件项目管理工具。


依赖于java环境,所以,必须要正确安装了java环境。


Maven主页:


http://maven.apache.org/



Maven

下载地址

: http://maven.apache.org/download.cgi

下载最新版:apache-maven-3.3.9-bin.zip


其中,apache-maven-3.3.9-src.zip是它的源码和资源文档等。

下载后解压到自己分类好的文件中。

配置说明:

Maven 3.2 要求 JDK 1.6 或以上版本, 而 Maven 3.0/3.1 需要 JDK 1.5 或以上。

新建系统变量   MAVEN_HOME  变量值:D:\Apache\apache-maven-3.1.1

编辑系统变量  Path         添加变量值: ;%MAVEN_HOME%\bin

验证配置

进入cmd命令窗口,执行 mvn –version命令,成功配置则显示MAVEN版本以及相关信息:







配置完成后就可以在cmd任意目录下使用mvn命令了,不配置也可以使用,但是每次都需要进入maven程序的目录下去执行。


maven首次编译某些项目,会去下载很多东西,其默认的目录在C:\Users\用户名\.m2\repository下,建议修改为自己常用的目录,方便管理,修改默认下载路径的方法:


百度经验:http://jingyan.baidu.com/article/3c343ff7e8b5850d3779632e.html




运行cmd进入dos界面,




使用汇编命名:


输入:F:直接进入F盘


cd path 进入下一个文件路径


cd..返回上层路径


进入F:\space\zxing-master\core>后输入



mvn -DskipTests -Dgpg.skip=true install 命令





maven将会自动编译。因为编译需要相关的程序支持(java平台的程序后缀名为.jar),所以,如果本地不存在这些程序,那么就会通过联网的方式去maven仓库下载。本次编译maven共下载了148M的repository内容。


耐心等待,下载完毕后将自动编译。编译成功则如下图所示:









提示:构建成功,并花费了30分钟。。。



如果,下载失败,那么就各显神通,翻墙,代理,vpn吧。或许可以向成功编译的童鞋找下载的repository内容。


并且在core目录下会生成target文件夹,里面就是生成的各种jar包和文档了。如图:









箭头所示就是测试文件相关(包括各种二维码图片),占领了125M内存空间。。。汗,没啥用,可以干掉。


core-3.2.2-SNAPSHOT.jar就是我们需要的jar包了,core-3.2.2-SNAPSHOT-javadoc.jar就是jar包的源码了。apidoc就是文档了。ok,编译完成。




虽然现在通过该jar包已经能够应用大部分情况,但是在实际使用过程中,我们可能会使用CameraConfigurationUtils.java文件,手动添加或许会比较麻烦,于是也可以再次使用cmd命令进入android-core文件目录下,执行

mvn -DskipTests -Dgpg.skip=true install 命令,等待下载完毕并编译完成。如图:




















当然,我觉得这个文件一点复杂度都没有的文件也可以通过ide,如eclipse来编译完成。









接着可以使用ant构建出安卓工程出来,将两个jar包导入安卓工程,就可以调试运行apk文件了。ant的构建过程可以参考该文:http://www.cnblogs.com/bxfx111/p/4158179.html



当然,才生成那么几个文档,我估计在ide中手动添加,甚至修改某些东西,合并为一个jar也是可以的。而且eclipse中已经集成了ant工具。



谷歌条形码官方例子运行图:












ok。全部完成。




资源下载












版权声明:本文为Mingyueyixi原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。