代码之家  ›  专栏  ›  技术社区  ›  user8323041

Android Studio Zxing扫描仪,如果二维码的结果是URL,如何重定向到网页

  •  1
  • user8323041  · 技术社区  · 9 年前

    我正在寻找一些帮助我的安卓应用程序,正在使用ZXing扫描仪。我想它重定向到一个网站,如果结果是URL。提前谢谢。

    import android.os.Bundle;
    import android.support.v7.app.AppCompatActivity;
    import android.view.View;
    import android.widget.Button;
    import android.widget.Toast;
    
    import com.google.zxing.Result;
    
    import me.dm7.barcodescanner.zxing.ZXingScannerView;
    
    
    public class ScannerActivity extends AppCompatActivity implements ZXingScannerView.ResultHandler {
        private ZXingScannerView zXingScannerView;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_scanner);
        }
    
        public void scan(View view) {
            zXingScannerView = new ZXingScannerView(getApplicationContext());
            setContentView(zXingScannerView);
            zXingScannerView.setResultHandler(this);
            zXingScannerView.startCamera();
        }
    
        public void onPause() {
            super.onPause();
            zXingScannerView.stopCamera();
        }
    
        @Override
        public void handleResult(Result result) {
            Toast.makeText(getApplicationContext(), result.getText(), Toast.LENGTH_SHORT).show();
            zXingScannerView.resumeCameraPreview(this);
    
        }
    }
    
    1 回复  |  直到 9 年前
        1
  •  2
  •   Saurabh Thorat    6 年前

    在你的 handleResult() :

    @Override
    public void handleResult(Result result) {
        if(Patterns.WEB_URL.matcher(result.getText()).matches()) {
            // Open URL
            Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(result.getText()));
            startActivity(browserIntent);
        }    
    }