android-zxingLibrary-master

所属分类:其他
开发工具:WINDOWS
文件大小:36554KB
下载次数:8
上传日期:2018-03-10 10:58:06
上 传 者Xyyy丶
说明:  实现安卓扫码功能。识别二维码信息读取,还是很不错的
(The Android scavenging function is realized. It is good to recognize two dimensional code information reading.)

文件列表:
.gradle\3.5\file-changes\last-build.bin (1, 2018-01-24)
.gradle\3.5\fileContent\annotation-processors.bin (19235, 2017-12-25)
.gradle\3.5\fileContent\fileContent.lock (17, 2017-12-25)
.gradle\3.5\javaCompile\classAnalysis.bin (2022955, 2017-12-25)
.gradle\3.5\javaCompile\jarAnalysis.bin (908907, 2017-12-25)
.gradle\3.5\javaCompile\javaCompile.lock (17, 2017-12-25)
.gradle\3.5\javaCompile\taskHistory.bin (135696, 2017-12-25)
.gradle\3.5\javaCompile\taskJars.bin (23603, 2017-12-25)
.gradle\3.5\taskHistory\fileHashes.bin (307969, 2017-12-26)
.gradle\3.5\taskHistory\fileSnapshots.bin (7962384, 2017-12-26)
.gradle\3.5\taskHistory\jvmClassSignatures.bin (26283, 2017-12-25)
.gradle\3.5\taskHistory\taskHistory.bin (186201, 2017-12-26)
.gradle\3.5\taskHistory\taskHistory.lock (17, 2018-01-24)
.gradle\buildOutputCleanup\built.bin (0, 2017-12-09)
.gradle\buildOutputCleanup\cache.properties (51, 2017-12-09)
.gradle\buildOutputCleanup\cache.properties.lock (2, 2018-01-24)
.idea\compiler.xml (686, 2017-12-09)
.idea\copyright\profiles_settings.xml (76, 2017-12-09)
.idea\gradle.xml (681, 2017-07-04)
.idea\inspectionProfiles\profiles_settings.xml (241, 2017-12-25)
.idea\inspectionProfiles\Project_Default.xml (678, 2017-12-25)
.idea\libraries\animated_vector_drawable_25_1_1.xml (624, 2017-12-18)
.idea\libraries\appcompat_v7_25_1_1.xml (588, 2017-12-18)
.idea\libraries\commons_codec_1_9.xml (237, 2017-12-25)
.idea\libraries\commons_logging_1_2.xml (241, 2017-12-25)
.idea\libraries\core_3_0_1.xml (229, 2017-12-18)
.idea\libraries\design_25_1_1.xml (570, 2017-12-18)
.idea\libraries\easypermissions_0_2_0.xml (408, 2017-12-18)
.idea\libraries\espresso_core_2_2_2.xml (602, 2017-12-18)
.idea\libraries\espresso_idling_resource_2_2_2.xml (635, 2017-12-18)
.idea\libraries\exposed_instrumentation_api_publish_0_5.xml (653, 2017-12-18)
.idea\libraries\fluent_hc_4_5.xml (229, 2017-12-25)
.idea\libraries\hamcrest_core_1_3.xml (526, 2017-12-18)
.idea\libraries\hamcrest_integration_1_3.xml (354, 2017-12-18)
.idea\libraries\hamcrest_library_1_3.xml (342, 2017-12-18)
.idea\libraries\httpclient_4_5.xml (231, 2017-12-25)
.idea\libraries\httpclient_cache_4_5.xml (243, 2017-12-25)
.idea\libraries\httpclient_win_4_5.xml (239, 2017-12-25)
.idea\libraries\httpcore_4_4_1.xml (231, 2017-12-25)
... ...

# android-zxingLibrary **更新日志** - compile 1.3 2016/08/02 优化扫描API - compile 1.4 2016/08/03 修复扫描时二维码拉伸问题 - compile 1.5 2016/08/05 更新控制闪光灯API - compile 1.6 2016/08/08 更新生成带logo二维码时logo不带边距可能存在的问题 - compile 1.7 2016/08/09 修改默认扫描框的大小,适配不同分辨率手机,修改自定义扫描框属性类型 - compile 1.8 2016/08/10 修复解析二维码图片时可能存在的OOM问题 - compile 1.9 2016/09/07 Library库中删除Application,在demo库中的Application执行初始化操作 - compile 2.0 2016/10/12 测试Demo中添加Android M权限处理,代码库添加自定义属性支持小圆点是否展示 - compile 2.1 2016/11/22 修复扫描中的一些bug - compile 2.2 2017/07/04 更新zxing包,修复一些已知的bug **使用说明** - 可打开默认二维码扫描页面 - 支持对图片Bitmap的扫描功能 - 支持对UI的定制化操作 - 支持对条形码的扫描功能 - 支持生成二维码操作 - 支持控制闪光灯开关 **使用方式:** - **集成默认的二维码扫描页面** 在具体介绍该扫描库之前我们先看一下其具体的使用方式,看看是不是几行代码就可以集成二维码扫描的功能。 - 在module的build.gradle中执行compile操作 ``` compile 'cn.yipianfengye.android:zxing-library:2.2' ``` - 在demo Application中执行初始化操作 ``` @Override public void onCreate() { super.onCreate(); ZXingLibrary.initDisplayOpinion(this); } ``` - 在代码中执行打开扫描二维码界面操作 ``` /** * 打开默认二维码扫描界面 */ button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(MainActivity.this, CaptureActivity.class); startActivityForResult(intent, REQUEST_CODE); } }); ``` 这里的REQUEST_CODE是我们定义的int型常量。 - 在Activity的onActivityResult方法中接收扫描结果 ``` /** * 处理二维码扫描结果 */ if (requestCode == REQUEST_CODE) { //处理扫描结果(在界面上显示) if (null != data) { Bundle bundle = data.getExtras(); if (bundle == null) { return; } if (bundle.getInt(CodeUtils.RESULT_TYPE) == CodeUtils.RESULT_SUCCESS) { String result = bundle.getString(CodeUtils.RESULT_STRING); Toast.makeText(this, "解析结果:" + result, Toast.LENGTH_LONG).show(); } else if (bundle.getInt(CodeUtils.RESULT_TYPE) == CodeUtils.RESULT_FAILED) { Toast.makeText(MainActivity.this, "解析二维码失败", Toast.LENGTH_LONG).show(); } } } ``` 怎么样是不是很简单?下面我们可以来看一下具体的执行效果: **执行效果:** ![image](https://github.com/yipianfengye/android-zxingLibrary/blob/master/images/ezgif.com-video-to-gif%20(2)%2015.33.08.gif) 但是这样的话是不是太简单了,如果我想选择图片解析呢?别急,对二维码图片的解析也是支持的 - **集成对二维码图片的解析功能** - 调用系统API打开图库 ``` Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.addCategory(Intent.CATEGORY_OPENABLE); intent.setType("image/*"); startActivityForResult(intent, REQUEST_IMAGE); ``` - 在Activity的onActivityResult方法中获取用户选中的图片并调用二维码图片解析API ``` if (requestCode == REQUEST_IMAGE) { if (data != null) { Uri uri = data.getData(); ContentResolver cr = getContentResolver(); try { Bitmap mBitmap = MediaStore.Images.Media.getBitmap(cr, uri);//显得到bitmap图片 CodeUtils.analyzeBitmap(mBitmap, new CodeUtils.AnalyzeCallback() { @Override public void onAnalyzeSuccess(Bitmap mBitmap, String result) { Toast.makeText(MainActivity.this, "解析结果:" + result, Toast.LENGTH_LONG).show(); } @Override public void onAnalyzeFailed() { Toast.makeText(MainActivity.this, "解析二维码失败", Toast.LENGTH_LONG).show(); } }); if (mBitmap != null) { mBitmap.recycle(); } } catch (Exception e) { e.printStackTrace(); } } ``` **执行效果** ![image](http://img.blog.csdn.net/20160727170831543) 有了默认的二维码扫描界面,也有了对二维码图片的解析,可能有的同学会说如果我想定制化显示UI怎么办呢?没关系也支持滴。 - **定制化显示扫描UI** 由于我们的扫描组件是通过Fragment实现的,所以能够很轻松的实现扫描UI的定制化。 - 在新的Activity中定义Layout布局文件 ```

近期下载者

相关文件


收藏者