MainActivity.java 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. package me.dm7.barcodescanner.vision.sample;
  2. import android.Manifest;
  3. import android.content.Intent;
  4. import android.content.pm.PackageManager;
  5. import android.os.Bundle;
  6. import android.support.annotation.NonNull;
  7. import android.support.v4.app.ActivityCompat;
  8. import android.support.v4.content.ContextCompat;
  9. import android.support.v7.app.AppCompatActivity;
  10. import android.support.v7.widget.Toolbar;
  11. import android.view.View;
  12. import android.widget.Toast;
  13. public class MainActivity extends AppCompatActivity {
  14. private static final int ZXING_CAMERA_PERMISSION = 1;
  15. private Class<?> mClass;
  16. @Override
  17. public void onCreate(Bundle state) {
  18. super.onCreate(state);
  19. setContentView(R.layout.activity_main);
  20. setupToolbar();
  21. }
  22. public void setupToolbar() {
  23. Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
  24. setSupportActionBar(toolbar);
  25. }
  26. public void launchSimpleActivity(View v) {
  27. launchActivity(SimpleScannerActivity.class);
  28. }
  29. public void launchFullActivity(View v) {
  30. launchActivity(FullScannerActivity.class);
  31. }
  32. public void launchActivity(Class<?> clss) {
  33. if (ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA)
  34. != PackageManager.PERMISSION_GRANTED) {
  35. mClass = clss;
  36. ActivityCompat.requestPermissions(this,
  37. new String[]{Manifest.permission.CAMERA}, ZXING_CAMERA_PERMISSION);
  38. } else {
  39. Intent intent = new Intent(this, clss);
  40. startActivity(intent);
  41. }
  42. }
  43. @Override
  44. public void onRequestPermissionsResult(int requestCode, @NonNull String permissions[], @NonNull int[] grantResults) {
  45. switch (requestCode) {
  46. case ZXING_CAMERA_PERMISSION:
  47. if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
  48. if (mClass != null) {
  49. Intent intent = new Intent(this, mClass);
  50. startActivity(intent);
  51. }
  52. } else {
  53. Toast.makeText(this, "Please grant camera permission to use the QR Scanner", Toast.LENGTH_SHORT).show();
  54. }
  55. }
  56. }
  57. public void launchFullFragmentActivity(View view) {
  58. launchActivity(FullScannerFragmentActivity.class);
  59. }
  60. }