【问题标题】:URL Result from QR Code Scanner来自 QR 码扫描器的 URL 结果
【发布时间】:2018-02-03 18:52:06
【问题描述】:

所以我正在尝试构建一个 QR 码扫描仪,但我的结果只显示了一个文本。甚至 QR 码上也有 URL 链接。无法在浏览器中打开。

这是我的扫描仪代码:

public class ReaderActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_reader);
    Button scan_btn = findViewById(R.id.scan_btn);
    final Activity activity = this;
    scan_btn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            IntentIntegrator integrator = new IntentIntegrator(activity);
            integrator.setDesiredBarcodeFormats(IntentIntegrator.QR_CODE_TYPES);
            integrator.setPrompt("Scan");
            integrator.setCameraId(0);
            integrator.setBeepEnabled(false);
            integrator.setBarcodeImageEnabled(false);
            integrator.initiateScan();
        }
    });
}


@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    IntentResult result = IntentIntegrator.parseActivityResult(requestCode, resultCode, data);
    if (result != null) {
        if (result.getContents() == null) {
            Toast.makeText(this, "You cancelled the scanning", Toast.LENGTH_LONG).show();
        } else {
            Toast.makeText(this, result.getContents(), Toast.LENGTH_LONG).show();
        }
    } else {
        super.onActivityResult(requestCode, resultCode, data);


    }
}}

我应该添加或更改什么以获得可点击的 URL 结果?有人可以解决这个问题吗?请帮助我完成我的项目。我真的需要它。

【问题讨论】:

    标签: java android qr-code zxing barcode-scanner


    【解决方案1】:

    您将在 result.getContents() 上获得 QR 结果,您应该必须使用操作意图来查看在浏览器中打开 URL

    【讨论】:

    • 使用动作意图是什么意思?对不起,我还是个新手。我真的不知道代码是什么以及放在哪里。
    • 我的结果仅以文字显示。我需要当结果是 URL 时,它可以直接到网络浏览器。
    • 你能帮帮我吗?
    • 是的,首先你检查结果是否包含“http”表示 URL,而不是请使用 follow try { Intent myIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("Result url"));开始活动(我的意图); } catch (ActivityNotFoundException e) { Toast.makeText(this, "没有应用程序可以处理这个请求。" + "请安装网络浏览器", Toast.LENGTH_LONG).show(); e.printStackTrace(); }
    猜你喜欢
    • 2016-08-24
    • 1970-01-01
    • 1970-01-01
    • 2016-08-15
    • 1970-01-01
    • 2012-08-08
    • 2014-04-10
    • 2022-06-24
    • 1970-01-01
    相关资源
    最近更新 更多