2017-07-26 9 views
1

私のZXing QRコードスキャナに問題があります。問題は、Webページや新しいアクティビティから戻るボタンを押すと、スキャナが動作を停止し、何もスキャンできなくなることです。誰が私の間違いがどこにあるのか教えてもらえますか? :x ありがとうございます。バックスキャン時にAndroid Zxingカメラが動作しない

import android.os.Bundle; 
import android.support.v7.app.AppCompatActivity; 
import android.view.View; 
import android.widget.Button; 
import android.widget.Toast; 
import android.util.Patterns; 
import android.content.Intent; 
import com.google.zxing.Result; 
import android.net.Uri; 

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); 

     if(Patterns.WEB_URL.matcher(result.getText()).matches()) { 
      // Open URL 
      Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(result.getText())); 
      startActivity(browserIntent); 
     } 
     if(result.getText().equals("Welcome to Booth A")) { 
      // Open nextActivity 
      Intent Quiz1 = new Intent(this, QuizActivity.class); 
      startActivity(Quiz1); 
     } 

    } 

答えて

0

あなたはScannerActivityonBackPressedメソッドをオーバーライドする必要があります。あなたはそれを好むことができます

@Override 
public void onBackPressed() { 
    //do something 
} 

デフォルトのメソッド呼び出しは、現在のフラグメントまたはアクティビティを破壊します。 を通り、zXingScannerView.stopCamera();を実行してカメラを停止しました。

+0

ありがとう、私は問題を解決しました –

+0

ニース。その後、これを承認済みとしてマークすることができます。 – rushi

関連する問題