使用ZXing创建Android条形码扫描应用程序

参见英文答案 > Integrating the ZXing library directly into my Android application                                    15个
我一直在寻找如何在我的应用程序中添加条形码扫描仪.有没有例子或我怎么能这么做?

解决方法:

ZXing项目提供了一个独立的条形码阅读器应用程序 – 通过Android的意图机制 – 可以被其他希望集成条形码扫描的应用程序调用.

最简单的方法是从您的应用程序调用ZXing SCAN Intent,like this

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,则会崩溃).一旦识别出条形码,您将在您的活动中收到结果,此处在内容变量中.

为了避免崩溃并简化您的工作,ZXing将provided a utility class集成到您的应用程序中,通过将用户重定向到Android Market(如果他们尚未安装),可以使ZXing的安装更加顺畅.

最后,如果您想要将条形码扫描直接集成到您的应用程序中而不依赖于安装单独的ZXing应用程序,那么它就是一个开源项目,您可以这样做!

上一篇:如何在JTextField上修复keylistener?


下一篇:F与Q查询 事务 choices参数