diff --git a/.gitignore b/.gitignore
index bbfc618c..95e5256f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,3 +9,4 @@ secrets.tar.gz
medic-official.keystore
playstore-secret.json
*.iml
+*.jks
diff --git a/build.gradle b/build.gradle
index 3505526d..d83ed952 100644
--- a/build.gradle
+++ b/build.gradle
@@ -69,6 +69,9 @@ dependencies {
exclude module: 'jcip-annotations'
}
+ implementation 'com.journeyapps:zxing-android-embedded:3.6.0' // Check for the latest version that supports API 16
+ implementation 'com.google.zxing:core:3.3.0'
+
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.5'
}
diff --git a/src/generic/res/values/strings.xml b/src/generic/res/values/strings.xml
index 1f977df3..e64cb114 100644
--- a/src/generic/res/values/strings.xml
+++ b/src/generic/res/values/strings.xml
@@ -1,4 +1,12 @@
SMS Gateway
-
+ Cancelled scan.
+
+ Warning: %1$s does not currently have permissions to access the camera.
+
This permission is required so you can configure the CHT-Core URL with a QR code.
+ ]]>
+
+ Scan Qr code
+
\ No newline at end of file
diff --git a/src/main/AndroidManifest.xml b/src/main/AndroidManifest.xml
index 36f356a8..0d37828c 100644
--- a/src/main/AndroidManifest.xml
+++ b/src/main/AndroidManifest.xml
@@ -24,6 +24,9 @@
https://github.com/medic/cht-gateway/issues/103 -->
+
+
+
CUSTOM EVENT HANDLERS
public void doSave(View view) {
@@ -88,6 +107,16 @@ public void cancelSettingsEdit(View view) {
backToMessageListsView();
}
+ public void openCamera(View view) {
+ IntentIntegrator integrator = new IntentIntegrator(this);
+ integrator.setDesiredBarcodeFormats(IntentIntegrator.QR_CODE);
+ integrator.setPrompt(getString(R.string.scanQrCode));
+ integrator.setCameraId(0);
+ integrator.setBeepEnabled(true);
+ integrator.setBarcodeImageEnabled(true);
+ integrator.initiateScan();
+ }
+
public void onBackPressed() {
if(hasPreviousSettings) {
backToMessageListsView();
diff --git a/src/main/res/layout/settings_dialog_generic.xml b/src/main/res/layout/settings_dialog_generic.xml
index 39fd7fdd..914fbffe 100644
--- a/src/main/res/layout/settings_dialog_generic.xml
+++ b/src/main/res/layout/settings_dialog_generic.xml
@@ -1,57 +1,92 @@
+ xmlns:app="http://schemas.android.com/apk/res-auto"
+ android:layout_width="fill_parent"
+ android:layout_height="fill_parent"
+ android:fillViewport="true"
+ android:scrollbars="vertical">
+
+
+
-
+
+
-
+
+
+
+
+
+
+
+
+
+
+
-
+
+
-
-
-
+ android:layout_alignParentRight="true"
+ android:layout_alignParentBottom="true"
+ android:onClick="doSave"
+ android:paddingLeft="16dp"
+ android:paddingRight="16dp"
+ android:text="@string/btnSave" />
+