文档章节

Android加入ZXing条码扫描功能

 屋顶牛奶
发布于 2016/05/15 19:16
字数 441
阅读 22
收藏 0

今天往一个程序里添加ZXing,本以为只要加几个包就可以了,实际操作中发现步骤挺多的,所以记录一下,下次再用到可以参照。

需要加入的文件列表:,

第一步:添加工具包,在libs里加入zxing。jar

第二步:加入代码文件:

1. 在src目录下加入3个包

2.在layout文件夹中加入两个布局文件

3. 在drawable文件夹里添加一个资源文件

 4. 在drawable-hdpi文件夹里加入4个图片文件

5. 在raw文件夹里加入1个声音文件,扫描成功的鸣音

6.在values文件夹加入id文件

    同时需要往strings.xml和colors.xml文件夹里各加入一段代码:

    strings.xml

 <!-- 条码扫描 -->
    <string name="scan_text">将条形码放入框内, 即可自动扫描</string>

    colors.xml

<color name="result_view">#b0000000</color>
<color name="viewfinder_mask">#60000000</color>
<color name="possible_result_points">#c0ffff00</color>

 

第三步:修改AndroidManifest.xml,这一步非常重要,需要添加摄像头和振动设备的权限,并注册扫描的Activity

 <uses-permission android:name="android.permission.VIBRATE" />
 <uses-permission android:name="android.permission.CAMERA" />
<activity
      android:name="com.mining.app.zxing.view.MipcaActivityCapture"
      android:configChanges="orientation|keyboardHidden"
      android:screenOrientation="portrait"
      android:windowSoftInputMode="stateAlwaysHidden" >
</activity>

第四步:扫描功能的调用

//定义一个条码扫描返回码
private final static int SCANNIN_GREQUEST_CODE = 1;

//定义启动扫描的动作
buttonScan.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
	Intent intent = new Intent();
	intent.setClass(BridgeInfoActivity.this, MipcaActivityCapture.class);
		intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
		startActivityForResult(intent, SCANNIN_GREQUEST_CODE);
	}			
});


//条码扫描回调函数
@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        switch (requestCode) {
		case SCANNIN_GREQUEST_CODE:
			if(resultCode == RESULT_OK){
				Bundle bundle = data.getExtras();
				//显示扫描到的内容
				String barCode = bundle.getString("result"); 
				editSearch.setText(barCode);
				listBridges.clear();
				listBridges.addAll(0, bridgeDao.findByBar(barCode,getDepCode()));
				adapter.notifyDataSetChanged();	
				isLoading = true;
			}
			break;
		}
    }	

        通过以上的四步就可以实现在自己的应用中加入条形码扫描功能了。

   

© 著作权归作者所有

共有 人打赏支持
粉丝 0
博文 4
码字总数 3357
作品 0
西安
私信 提问
android应用之间依赖的解决办法

android提供了一种机制,可以通过Intent复用多个应用的界面。比如可以在自己的应用中调用条形码识别程序zxing,然后返回条形码的结果。 不过呢,这需要系统必须事先在手机上安装zxing的条码扫...

华宰
2011/09/07
984
0
在Android上使用ZXing识别条形码/二维码

本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! 越来越多的手机具备自动对焦的拍摄功能,这也意味着这些手机可以具备条码扫描的功能.......手机具备条码扫描的功能,可以优化购...

晨曦之光
2012/03/14
10.5K
0
在Android上使用ZXing识别条码/二维码

本文来自http://blog.csdn.net/hellogv/ ,引用必须注明出处! 越来越多的手机具备自动对焦的拍摄功能,这也意味着这些手机可以具备条码扫描的功能.......手机具备条码扫描的功能,可以优化购...

zungyiu
2010/12/29
0
0
ZXing android 源码简化

前言 最近公司的Android项目需要用到摄像头做条码或二维码的扫描,Google一下,发现一个以Apache License 2.0 开源的 ZXing项目。Zxing项目里的Android实现太过复杂多余东西太多,得对其进行...

鉴客
2011/09/27
19.8K
7
【基于zxing的编解码实战】zxing项目源码解读(2.3.0版本,Android部分)

zxing2.3.0目录结构(android相关) 下载zxing2.3.0后,与android相关的有三个目录: android:就是Barcode Scanner,中文名"条码扫描器"。下文中简写为BS。 android-integration:提供一种简...

Madmatrix
2013/12/31
0
3

没有更多内容

加载失败,请刷新页面

加载更多

ORA 各种oraclesql错误

ORA-00001: 违反唯一约束条件 (.) ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 ORA-00019: 超出最大会话许可数 ORA-00020: 超出最大进程数 () ORA-00021: 会话附属于其它某...

青峰Jun19er
7分钟前
2
0
没错,老板让我写个 BUG!

前言 标题没有看错,真的是让我写个 bug! 刚接到这个需求时我内心没有丝毫波澜,甚至还有点激动。这可是我特长啊;终于可以光明正大的写 bug 了🙄。 先来看看具体是要干啥吧,其实主要就是...

crossoverJie
20分钟前
1
0
开源软件会被云杀死吗 ?

本文转载云头条,原作者:Michael Stiefel是Reliable Software公司的负责人,是一名软件架构和开发顾问。 文章要点 虽然开源开发不会消失,但商业开源厂商的未来不是很有希望。随着全面管理的...

linuxCool
54分钟前
5
0
OSChina 周三乱弹 —— 谈什么对象?睡什么觉?

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @胖达panda :最肯忘却古人诗,最不屑一顾是相思。分享童丽的单曲《红豆生南国》: 《红豆生南国》- 童丽 手机党少年们想听歌,请使劲儿戳(这...

小小编辑
58分钟前
374
5
stylus

stylus基础教程,stylus实例教程,stylus语法总结

miaojiangmin
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部