如何在安卓系统中扫描二维码
我找到了一个关于如何扫描条形码的教程。但是在我的应用程序中,我必须扫描QR码。如何在安卓系统中扫描二维码?
我找到了一个关于如何扫描条形码的教程。但是在我的应用程序中,我必须扫描QR码。如何在安卓系统中扫描二维码?
try {
Intent intent = new Intent("com.google.zxing.client.android.SCAN");
intent.putExtra("SCAN_MODE", "QR_CODE_MODE"); // "PRODUCT_MODE for bar codes
startActivityForResult(intent, 0);
} catch (Exception e) {
Uri marketUri = Uri.parse("market://details?id=com.google.zxing.client.android");
Intent marketIntent = new Intent(Intent.ACTION_VIEW,marketUri);
startActivity(marketIntent);
}
和onActivityResult():
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 0) {
if (resultCode == RESULT_OK) {
String contents = data.getStringExtra("SCAN_RESULT");
}
if(resultCode == RESULT_CANCELLED){
//handle cancel
}
}
}
目前的建议是使用 Android 条形码 API,它可以在本地(脱机)工作,而无需服务器往返:
条形码 API 可在设备上以任何方向实时检测条形码。它还可以一次检测多个条形码。
它读取以下条形码格式:
- 一维条码: EAN-13, EAN-8, UPC-A, UPC-E, Code-39, Code-93, Code-128, ITF, Codabar
- 二维条码: 二维码, 数据矩阵, PDF-417, AZTEC
它会自动解析QR码,数据矩阵,PDF-417和Aztec值,适用于以下支持的格式:
- 网址
- 联系信息(VCARD等)
- 日历事件
- 电子邮件
- 电话
- 短信
- 国际书号
- 无线网络
- 地理位置(纬度和经度)
- AAMVA 驾驶执照/身份证
查看代码实验室 - 使用移动视觉 API 进行条形码检测。