package info.rekayasa.qrcodescanner; import android.Manifest; import android.app.Activity; import android.content.Intent; import android.content.pm.PackageManager; import android.os.Bundle; import android.support.v4.app.ActivityCompat; import android.support.v4.content.ContextCompat; import android.support.v7.app.AppCompatActivity; import android.util.Log; import android.view.View; import android.widget.TextView; import android.widget.Toast; import com.google.zxing.Result; import com.google.zxing.integration.android.IntentIntegrator; import com.google.zxing.integration.android.IntentResult; import me.dm7.barcodescanner.zxing.ZXingScannerView; public class MainActivity1 extends AppCompatActivity { private ZXingScannerView mScannerView; public static final int MY_PERMISSIONS_REQUEST_CAMERA = 42; TextView tvResult; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); tvResult = (TextView)findViewById(R.id.tvResult); } public void QrScanner(View view){ // check Android 6 permission if (ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED) { IntentIntegrator integrator = new IntentIntegrator(MainActivity1.this); integrator.setDesiredBarcodeFormats(IntentIntegrator.ALL_CODE_TYPES); integrator.setPrompt("Scan"); integrator.setCameraId(0); integrator.setBeepEnabled(false); integrator.setBarcodeImageEnabled(false); integrator.initiateScan(); } else { ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.CAMERA}, MY_PERMISSIONS_REQUEST_CAMERA); } } public 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, "Canclled", Toast.LENGTH_LONG).show(); } else { Toast.makeText(this, "Scanned: " + result.getContents(), Toast.LENGTH_LONG).show(); tvResult.setText(result.getContents()); } } else { super.onActivityResult(requestCode, resultCode, data); } } @Override public void onPause() { super.onPause(); // mScannerView.stopCamera(); // Stop camera on pause } }