diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 6d05c299..0afeaad4 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -2,6 +2,8 @@ + + diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/MainActivity.java b/app/src/main/java/com/beemdevelopment/aegis/ui/MainActivity.java index 592d15d7..fd453b50 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/MainActivity.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/MainActivity.java @@ -240,10 +240,15 @@ public class MainActivity extends AegisActivity implements EntryListView.Listene dialog.dismiss(); startScanImageActivity(); }); - view.findViewById(R.id.fab_scan).setOnClickListener(v3 -> { - dialog.dismiss(); - startScanActivity(); - }); + View fabScan = view.findViewById(R.id.fab_scan); + if (android.os.Build.VERSION.SDK_INT < 21) { + fabScan.setVisibility(View.GONE); + } else { + fabScan.setOnClickListener(v3 -> { + dialog.dismiss(); + startScanActivity(); + }); + } Dialogs.showSecureDialog(dialog); }); @@ -805,7 +810,9 @@ public class MainActivity extends AegisActivity implements EntryListView.Listene switch (action) { case "scan": - startScanActivity(); + if (android.os.Build.VERSION.SDK_INT >= 21) { + startScanActivity(); + } break; } diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/ScannerActivity.java b/app/src/main/java/com/beemdevelopment/aegis/ui/ScannerActivity.java index cc0d6095..16fcdee1 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/ScannerActivity.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/ScannerActivity.java @@ -33,6 +33,7 @@ import java.util.concurrent.ExecutionException; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; +@androidx.annotation.RequiresApi(21) public class ScannerActivity extends AegisActivity implements QrCodeAnalyzer.Listener { private ProcessCameraProvider _cameraProvider; private ListenableFuture _cameraProviderFuture; @@ -52,6 +53,13 @@ public class ScannerActivity extends AegisActivity implements QrCodeAnalyzer.Lis @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); + + if (android.os.Build.VERSION.SDK_INT < 21) { + Toast.makeText(this, R.string.camera_not_supported, Toast.LENGTH_LONG).show(); + finish(); + return; + } + if (abortIfOrphan(savedInstanceState)) { return; } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 9014aa46..a0f7665f 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -619,4 +619,5 @@ %d item selected %d items selected + Camera is not supported on this device.