android:zxing条码扫描成功但不从活动返回

我成功地使用zxing来扫描代码,通过调用安装的条形码读取器的意图,但是当它发出哔声并表示良好的扫描时,我期望zxing活动会返回控制,所以我可以处理结果,但是它坐在那里并尝试再次扫描.我必须按后退按钮,然后返回,我可以做下一步.当我打电话给扫描仪时,有没有一些明显的标志?

任何建议感激不尽.非常感谢.

这是我的代码

public boolean onTouchEvent(final MotionEvent event) {

    Intent intent = new Intent("com.google.zxing.client.android.SCAN");
    intent.putExtra("com.google.zxing.client.android.SCAN.SCAN_MODE","QR_CODE_MODE");
    startActivityForResult(intent,0);

    return true;
    }

public void onActivityResult(int requestCode,int resultCode,Intent intent) {

    super.onActivityResult(requestCode,resultCode,intent);

    if (requestCode == 0) {
        if (resultCode == RESULT_OK) {
            String contents = intent.getStringExtra("SCAN_RESULT");
            String format = intent.getStringExtra("SCAN_RESULT_FORMAT");

            // Handle successful scan

            String s = "http://www.google.com/search?q=";
            s += contents;
            Intent myIntent1 = new Intent(Intent.ACTION_VIEW,Uri.parse(s));
            startActivity(myIntent1);
            }
        else 
            if (resultCode == RESULT_CANCELED) {
                // Handle cancel
                }
            }
        }
    }

解决方法

为什么不使用提供的IntentIntegrator类?这是项目文件中提到的唯一方法,你看过这些吗? https://github.com/zxing/zxing/wiki/Scanning-Via-Intent

我创建它来包装发送和解析意图的这些细节,所以你不会打字错误.例如,没有额外的“com.google.zxing.client.android.SCAN.SCAN_MODE”这样的东西.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...