Android 应用集成 Zxing 扫描QRCode -- 调用外部库模式
2014-01-16 21:08
253 查看
到 https://code.google.com/p/zxing/ 下载
集成
在
扫描二维码
二维码的应用是越来越广呢。我们会收到在手机上扫描二维码的需求,那么,我们尝试使用一种方法实现。
前置:
需要第三方APK。名称是 “条码扫描器” ,该APK在 google play 和豌豆荚市场都能够下载到。
过程:
1,开始扫描二维码
IntentIntegrator integrator = new IntentIntegrator(MainActivity.this);//指定当前的activity
integrator.initiateScan(IntentIntegrator.QR_CODE_TYPES); //启动扫描
2,注册扫描完成后的处理(回调)
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
IntentResult result = IntentIntegrator.parseActivityResult(requestCode,
resultCode, intent);
if (result != null) {
String contents = result.getContents();
if (contents != null) {
showDialog(R.string.result_succeeded, result.toString());
} else {
showDialog(R.string.result_failed,
getString(R.string.result_failed_why));
}
}
}
3,完成。。。
那么我们需要上面提到的类 IntentIntegrator ,从哪里来的? 我是从 google开源的项目zxing里代码里找到的。并提取了一些代码来使用。我会在本文的末尾提供代码下载,可以从代码里获得这个类。
----------------------
扩展阅读
恩。那么 IntentIntegrator 这个类里到底干了什么?
通过阅读代码,我们知道它做了两件事:
1.查找目标APK 里 “是否有扫描二维码的程序”。如果不存在,那么提示,并使得指示用户 去市场下载。
2.如果存在,发送intent。发送了,那么会有 相应的Activity来处理它,在activty关闭后 封装对应的返回参数。
建议大家去读读zxing的代码。
http://code.google.com/p/zxing/
com.google.zxing.integration.android.IntentIntegrator
com.google.zxing.integration.android.IntentResult两个类的源码放到自己工程中
集成
在
Activity类的要调用扫描程序的地方添加以下代码
IntentIntegrator integrator = new IntentIntegrator(MainActivity.this);
integrator.initiateScan();
Activity类实现
onActivityResult方法
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
IntentResult scanResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, intent);
if (scanResult != null) {
String contents = scanResult.getContents();
// 对扫描内容处理
} else {
textView.setText("error");
}
}
扫描二维码
- 调用第三方APK来实现二维码扫描,参考自 开源项目zxing
二维码的应用是越来越广呢。我们会收到在手机上扫描二维码的需求,那么,我们尝试使用一种方法实现。前置:
需要第三方APK。名称是 “条码扫描器” ,该APK在 google play 和豌豆荚市场都能够下载到。
过程:
1,开始扫描二维码
IntentIntegrator integrator = new IntentIntegrator(MainActivity.this);//指定当前的activity
integrator.initiateScan(IntentIntegrator.QR_CODE_TYPES); //启动扫描
2,注册扫描完成后的处理(回调)
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
IntentResult result = IntentIntegrator.parseActivityResult(requestCode,
resultCode, intent);
if (result != null) {
String contents = result.getContents();
if (contents != null) {
showDialog(R.string.result_succeeded, result.toString());
} else {
showDialog(R.string.result_failed,
getString(R.string.result_failed_why));
}
}
}
3,完成。。。
那么我们需要上面提到的类 IntentIntegrator ,从哪里来的? 我是从 google开源的项目zxing里代码里找到的。并提取了一些代码来使用。我会在本文的末尾提供代码下载,可以从代码里获得这个类。
----------------------
扩展阅读
恩。那么 IntentIntegrator 这个类里到底干了什么?
通过阅读代码,我们知道它做了两件事:
1.查找目标APK 里 “是否有扫描二维码的程序”。如果不存在,那么提示,并使得指示用户 去市场下载。
2.如果存在,发送intent。发送了,那么会有 相应的Activity来处理它,在activty关闭后 封装对应的返回参数。
建议大家去读读zxing的代码。
http://code.google.com/p/zxing/
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
IntentResult scanResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, intent);
if (scanResult != null) {
String contents = scanResult.getContents();
// 对扫描内容处理
} else {
textView.setText("error");
}
}
相关文章推荐
- 使用zxing生成QRCode二维码,在Android的webview中调用条形码扫描(转)
- 使用zxing生成QRCode二维码,在Android的webview中调用条形码扫描
- [置顶] android开发之集成zxing,二维码,以及扫描二维码的功能实现。带源代码下载
- Delphi xe5调用外部扫描程序——谷歌 zxing
- android开发之集成zxing,二维码,以及扫描二维码的功能实现。带源代码下载
- Android集成Zxing实现二维码的扫描与生成(含动态权限)
- android开发(17) 扫描二维码 - 调用第三方APK来实现二维码扫描,参考自 开源项目zxing
- android开发(17) 扫描二维码 - 调用第三方APK来实现二维码扫描,参考自 开源项目zxing
- Android Zxing 扫描条码实现竖屏模式(portrait mode) 摄像头camera 旋转90度
- Android中 使用 zxing 集成扫描二维码的功能
- Android二维码扫描之ZXing快速项目集成
- Android开发之调用外部应用打开指定文件
- android 如何调用talk程序,集成到自己写的应用中
- [置顶] Android移动开发-在Android项目里集成开源框架ZXing实现扫描二维码的功能
- Android Zxing 扫描条码实现竖屏模式 Camera摄像头 旋转90度
- phonegap添加二维码扫描插件集成ZXing扫描组件(Android版)
- Android二维码扫描之ZXing快速项目集成
- Android之Zxing扫描二维码 简单式集成
- android调用外部地图应用
- Delphi xe5调用外部扫描程序——谷歌 zxing