条码扫描器(Android)中的奇怪行为

时间:2011-08-08 08:24:17

标签: android barcode-scanner zxing

我正在开发Android应用程序,目前我正在运行Barcode Scanner(Zxing)。我正在使用Zxing作为Eclipse中的“库项目”。

我用Ant构建了Zxing核心项目,通过在Eclipse中导入源代码并勾选“Is Library”框来创建我的Zxing android项目。 (该项目在其依赖项中使用“core.jar”。)

然后我有我的主项目,它使用Zxing库项目,该项目也使用“core.jar”。

所以,这就是问题,当我运行我的应用程序并启动我的条形码扫描仪意图时, 这是我在屏幕上看到的内容:

http://imageshack.us/photo/my-images/52/screenbarcodescanner.png/ (我很抱歉,但我没有足够的声誉来发布我的屏幕)

奇怪的是,当我把手放在相机前面或者一些条形码,QR码(它没有扫描,但是红线上出现了一些绿点,你似乎认出了一些东西,你知道,在没有在屏幕上看到任何内容的情况下瞄准代码有点困难;))

最后,这是我调用Intent并管理结果的方式,这是基本方式,因为它是在Zxing Google代码页上编写的:

    @Override
public void onClick(View sender)
{
    if(sender.equals(_scan_button))
    {
        startActivityForResult(new Intent("com.google.zxing.client.android.SCAN"), 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 the result
        } else if (resultCode == RESULT_CANCELED) {
            // Handle cancel
        }
    }
}

我实际上并没有为Intent提供代码格式,因为我希望它扫描任何代码格式。

我能说的最后一点是,在用Zxing作为一个图书馆项目之前,我使用的只是作为“项目依赖”,这样,如果没有安装Zxing apk就安装在我的手机上,然后再运行主要项目。一切都很好,现在它已经嵌入了......我被困住了,我不知道为什么或我错过了什么。

感谢您的回答!

1 个答案:

答案 0 :(得分:0)

你在这里混淆了。如果按Intent集成,则不需要Barcode Scanner的任何代码。在项目中,您可能需要的只是在android-integration中找到的一小部分集成代码。这应该解决你的问题。