diff options
| author | Norbel Ambanumben <norbel@ambanumben.net> | 2025-03-23 11:03:51 +0100 |
|---|---|---|
| committer | Norbel Ambanumben <norbel@ambanumben.net> | 2025-03-23 11:03:51 +0100 |
| commit | e93270ab0a478d165d33e8625ada465620aebbf1 (patch) | |
| tree | ebf45113cc944e40f6416231e9d39e69f514c469 /app/src/normal | |
| parent | e8f9623bcdd5ea1414ce2b513c601d4993284e6e (diff) | |
chore: remove camera permission for custom branded versions
Diffstat (limited to 'app/src/normal')
| -rw-r--r-- | app/src/normal/AndroidManifest.xml | 6 | ||||
| -rw-r--r-- | app/src/normal/java/se/leap/bitmaskclient/providersetup/helpers/QrScannerHelper.java | 39 |
2 files changed, 45 insertions, 0 deletions
diff --git a/app/src/normal/AndroidManifest.xml b/app/src/normal/AndroidManifest.xml new file mode 100644 index 00000000..3987d95d --- /dev/null +++ b/app/src/normal/AndroidManifest.xml @@ -0,0 +1,6 @@ +<manifest xmlns:android="http://schemas.android.com/apk/res/android"> + <uses-feature + android:name="android.hardware.camera" + android:required="false" /> + <uses-permission android:name="android.permission.CAMERA"/> +</manifest>
\ No newline at end of file diff --git a/app/src/normal/java/se/leap/bitmaskclient/providersetup/helpers/QrScannerHelper.java b/app/src/normal/java/se/leap/bitmaskclient/providersetup/helpers/QrScannerHelper.java new file mode 100644 index 00000000..88046360 --- /dev/null +++ b/app/src/normal/java/se/leap/bitmaskclient/providersetup/helpers/QrScannerHelper.java @@ -0,0 +1,39 @@ +package se.leap.bitmaskclient.providersetup.helpers; + +import androidx.activity.result.ActivityResultLauncher; +import androidx.fragment.app.Fragment; + +import com.journeyapps.barcodescanner.ScanContract; +import com.journeyapps.barcodescanner.ScanOptions; + +import se.leap.bitmaskclient.base.models.Introducer; +import se.leap.bitmaskclient.providersetup.fragments.helpers.AbstractQrScannerHelper; + +public class QrScannerHelper extends AbstractQrScannerHelper { + + private final ActivityResultLauncher<ScanOptions> scannerActivityResultLauncher; + + public QrScannerHelper(Fragment fragment, ScanResultCallback callback) { + super(fragment, callback); + this.scannerActivityResultLauncher = fragment.registerForActivityResult(new ScanContract(), result -> { + if(result.getContents() != null) { + try { + Introducer introducer = Introducer.fromUrl(result.getContents()); + callback.onScanResult(introducer); + } catch (Exception e) { + e.printStackTrace(); + //binding.editCustomProvider.setText(result.getContents()); + } + } + }); + } + + @Override + public void startScan() { + ScanOptions options = new ScanOptions(); + options.setBeepEnabled(false); + options.setBarcodeImageEnabled(false); + options.setOrientationLocked(false); + scannerActivityResultLauncher.launch(options); + } +} |
