如何创建条码扫描器(Android)?
有人可以告诉我,如果创建条码扫描器应用程序(对于Android)很困难? OpenCV库是否良好的开始?我在哪里可以找到明确说明如何阅读条形码的算法?我会很感激关于这个话题的所有好材料!如何创建条码扫描器(Android)?
在此先感谢!
斑马线项目提供了一个独立的条形码阅读器应用程序,它 - 通过Android的意图机制 - 可谁希望集成条码扫描其他应用程序调用。
做到这一点,最简单的方法是调用斑马线SCAN意图从你的应用程序,如:
public Button.OnClickListener mScan = new Button.OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent("com.google.zxing.client.android.SCAN");
intent.putExtra("SCAN_MODE", "QR_CODE_MODE");
startActivityForResult(intent, 0);
}
};
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
if (requestCode == 0) {
if (resultCode == RESULT_OK) {
String contents = intent.getStringExtra("SCAN_RESULT");
String format = intent.getStringExtra("SCAN_RESULT_FORMAT");
// Handle successful scan
} else if (resultCode == RESULT_CANCELED) {
// Handle cancel
}
}
}
按挂MSCAN按钮将直接发射到斑马线条形码扫描仪屏幕(或崩溃,如果ZXing没有安装)。一旦条形码被识别出来,你会在你的活动中收到结果,这里是内容变量。
为了避免崩溃和简化您的操作,ZXing有provided a utility class,您可以将它们集成到您的应用程序中,通过将用户重定向到Android电子市场(如果它们尚未安装),使ZXing的安装更加流畅。
最后,如果你想条形码扫描直接集成到应用程序,而无需依赖于具有安装了独立的斑马线应用程序,以及那么它是一个开源项目,你可以这样做! :)
您可以使用现有的适用于Android的Zebra Crossing条码扫描器,可在:http://code.google.com/p/zxing/。通常情况下,您的想法是通过intent来调用它,如下例所示:http://code.google.com/p/zxing/wiki/ScanningViaIntent。
斑马线穿越是有史以来最好记录的java一维或二维条码解码器或编码器。许多人使用它,它已成为Android的事实标准。这里也有a healthy buzz about it。
RedLaserhas an api,但如果您在生产中使用它,则必须付费。当我试用它时,我没有发现这是对斑马线的改进。当然不是为price。
jjildoes barcodes但是这个项目只有3个提交者,我从来没有用过它,所以我不知道该怎么告诉你。它的source当然是可读的。
一旦你start reading,你会发现由于模糊的图像,噪声,失真,怪异的角度等等,读者是棘手的事情来实现。所以如果你想要一些可靠的东西,你可能想要一个社区维护的图书馆。
您可以使用zbar库。从它下载: http://sourceforge.net/projects/zbar/files/AndroidSDK/
我认为这比zxing更快,更准确。
你能帮助我吗?请带我的问题 – AMH
ZXing库能够扫描Android上的条形码。这可能是一个起点。 – Codo