diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml
index 4208fd8b..06cf6370 100644
--- a/.github/workflows/publish.yml
+++ b/.github/workflows/publish.yml
@@ -60,6 +60,19 @@ jobs:
ANDROID_SECRETS_IV: ${{ secrets.ANDROID_SECRETS_IV_CHT_RCI }}
run: make org=cht_rci keydec
+ - name: Unpack secrets cht_rci_test
+ env:
+ ANDROID_SECRETS_KEY: ${{ secrets.ANDROID_SECRETS_KEY_CHT_RCI_TEST }}
+ ANDROID_SECRETS_IV: ${{ secrets.ANDROID_SECRETS_IV_CHT_RCI_TEST }}
+ run: make org=cht_rci_test keydec
+
+
+ - name: Unpack secrets cht_rci_training
+ env:
+ ANDROID_SECRETS_KEY: ${{ secrets.ANDROID_SECRETS_KEY_CHT_RCI_TRAINING }}
+ ANDROID_SECRETS_IV: ${{ secrets.ANDROID_SECRETS_IV_CHT_RCI_TRAINING }}
+ run: make org=cht_rci_training keydec
+
- name: Assemble unbranded
uses: maierj/fastlane-action@v1.4.0
with:
@@ -279,6 +292,30 @@ jobs:
ANDROID_KEYSTORE_PASSWORD: ${{ secrets.ANDROID_KEYSTORE_PASSWORD_CHT_RCI }}
ANDROID_KEY_PASSWORD: ${{ secrets.ANDROID_KEY_PASSWORD_CHT_RCI }}
+ - name: Assemble cht_rci_test
+ uses: maierj/fastlane-action@v1.4.0
+ with:
+ lane: build
+ options: '{ "flavor": "cht_rci_test" }'
+ env:
+ ANDROID_KEYSTORE_PATH: cht_rci_test.keystore
+ ANDROID_KEYSTORE_PASSWORD: ${{ secrets.ANDROID_KEYSTORE_PASSWORD_CHT_RCI_TEST }}
+ ANDROID_KEY_PASSWORD: ${{ secrets.ANDROID_KEY_PASSWORD_CHT_RCI_TEST }}
+
+
+ - name: Assemble cht_rci_training
+ uses: maierj/fastlane-action@v1.4.0
+ with:
+ lane: build
+ options: '{ "flavor": "cht_rci_training" }'
+ env:
+ ANDROID_KEYSTORE_PATH: cht_rci_training.keystore
+ ANDROID_KEYSTORE_PASSWORD: ${{ secrets.ANDROID_KEYSTORE_PASSWORD_CHT_RCI_TRAINING }}
+ ANDROID_KEY_PASSWORD: ${{ secrets.ANDROID_KEY_PASSWORD_CHT_RCI_TRAINING }}
+
+
+
+
- name: Bundle alerte_niger
uses: maierj/fastlane-action@v1.4.0
with:
@@ -308,6 +345,31 @@ jobs:
ANDROID_KEYSTORE_PASSWORD: ${{ secrets.ANDROID_KEYSTORE_PASSWORD_CHT_RCI }}
ANDROID_KEY_PASSWORD: ${{ secrets.ANDROID_KEY_PASSWORD_CHT_RCI }}
+
+ - name: Bundle cht_rci_test
+ uses: maierj/fastlane-action@v1.4.0
+ with:
+ lane: bundle
+ options: '{ "flavor": "cht_rci_test" }'
+ env:
+ ANDROID_KEYSTORE_PATH: cht_rci_test.keystore
+ ANDROID_KEYSTORE_PASSWORD: ${{ secrets.ANDROID_KEYSTORE_PASSWORD_CHT_RCI_TEST }}
+ ANDROID_KEY_PASSWORD: ${{ secrets.ANDROID_KEY_PASSWORD_CHT_RCI_TEST }}
+
+
+- name: Bundle cht_rci_training
+ uses: maierj/fastlane-action@v1.4.0
+ with:
+ lane: bundle
+ options: '{ "flavor": "cht_rci_training" }'
+ env:
+ ANDROID_KEYSTORE_PATH: cht_rci_training.keystore
+ ANDROID_KEYSTORE_PASSWORD: ${{ secrets.ANDROID_KEYSTORE_PASSWORD_CHT_RCI_TRAINING }}
+ ANDROID_KEY_PASSWORD: ${{ secrets.ANDROID_KEY_PASSWORD_CHT_RCI_TRAINING }}
+
+
+
+
- name: Unpack secrets moh_civ_uat
env:
ANDROID_SECRETS_KEY: ${{ secrets.ANDROID_SECRETS_KEY_MOH_CIV_UAT }}
@@ -621,6 +683,68 @@ jobs:
ANDROID_KEYSTORE_PASSWORD: ${{ secrets.ANDROID_KEYSTORE_PASSWORD_LUMBINI_CHIS }}
ANDROID_KEY_PASSWORD: ${{ secrets.ANDROID_KEYSTORE_PASSWORD_LUMBINI_CHIS }}
+
+
+
+ - name: Assemble musomali_test
+ uses: maierj/fastlane-action@v1.4.0
+ with:
+ lane: build
+ options: '{ "flavor": "musomali_test" }'
+ env:
+ ANDROID_KEYSTORE_PATH: musomali_test.keystore
+ ANDROID_KEYSTORE_PASSWORD: ${{ secrets.ANDROID_KEYSTORE_PASSWORD_MUSOMALI_TEST }}
+ ANDROID_KEY_PASSWORD: ${{ secrets.ANDROID_KEY_PASSWORD_MUSOMALI_TEST }}
+
+ - name: Bundle musomali_test
+ uses: maierj/fastlane-action@v1.4.0
+ with:
+ lane: bundle
+ options: '{ "flavor": "musomali_test" }'
+ env:
+ ANDROID_KEYSTORE_PATH: musomali_test.keystore
+ ANDROID_KEYSTORE_PASSWORD: ${{ secrets.ANDROID_KEYSTORE_PASSWORD_MUSOMALI_TEST }}
+ ANDROID_KEY_PASSWORD: ${{ secrets.ANDROID_KEY_PASSWORD_MUSOMALI_TEST }}
+
+- name: Unpack secrets musomali_test
+ env:
+ ANDROID_SECRETS_KEY: ${{ secrets.ANDROID_SECRETS_KEY_MUSOMALI_TEST }}
+ ANDROID_SECRETS_IV: ${{ secrets.ANDROID_SECRETS_IV_MUSOMALI_TEST }}
+ run: make org=musomali_test keydec
+
+
+
+
+
+- name: Assemble musomali_training
+ uses: maierj/fastlane-action@v1.4.0
+ with:
+ lane: build
+ options: '{ "flavor": "musomali_training" }'
+ env:
+ ANDROID_KEYSTORE_PATH: musomali_training.keystore
+ ANDROID_KEYSTORE_PASSWORD: ${{ secrets.ANDROID_KEYSTORE_PASSWORD_MUSOMALI_TRAINING }}
+ ANDROID_KEY_PASSWORD: ${{ secrets.ANDROID_KEY_PASSWORD_MUSOMALI_TRAINING }}
+
+ - name: Bundle musomali_training
+ uses: maierj/fastlane-action@v1.4.0
+ with:
+ lane: bundle
+ options: '{ "flavor": "musomali_training" }'
+ env:
+ ANDROID_KEYSTORE_PATH: musomali_training.keystore
+ ANDROID_KEYSTORE_PASSWORD: ${{ secrets.ANDROID_KEYSTORE_PASSWORD_MUSOMALI_TRAINING }}
+ ANDROID_KEY_PASSWORD: ${{ secrets.ANDROID_KEY_PASSWORD_MUSOMALI_TRAINING }}
+
+- name: Unpack secrets musomali_training
+ env:
+ ANDROID_SECRETS_KEY: ${{ secrets.ANDROID_SECRETS_KEY_MUSOMALI_TRAINING }}
+ ANDROID_SECRETS_IV: ${{ secrets.ANDROID_SECRETS_IV_MUSOMALI_TRAINING }}
+ run: make org=musomali_training keydec
+
+
+
+
- name: GitHub release
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
diff --git a/.gitignore b/.gitignore
index 5228dd69..47bb9e4f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -10,6 +10,7 @@
secrets*.tar.gz
*.keystore
+*.jks
*_private_key.pepk
playstore-secret.json
pepk.jar
diff --git a/Makefile b/Makefile
index 27e04ccf..016989db 100644
--- a/Makefile
+++ b/Makefile
@@ -168,8 +168,10 @@ ifndef ANDROID_SECRETS_IV
$(eval ANDROID_KEYSTORE_PASSWORD := $(shell echo ${${VARNAME}}))
$(eval VARNAME=ANDROID_KEY_PASSWORD_${ORG_UPPER})
$(eval ANDROID_KEY_PASSWORD := $(shell echo ${${VARNAME}}))
- $(eval ANDROID_KEY_ALIAS := "medicmobile")
- $(eval ANDROID_KEYSTORE_PATH := "${org}.keystore")
+ $(eval VARNAME=ANDROID_KEY_ALIAS_${ORG_UPPER})
+ $(eval ANDROID_KEY_ALIAS := $(shell echo ${${VARNAME}}))
+ $(eval VARNAME=ANDROID_KEYSTORE_PATH_${ORG_UPPER})
+ $(eval ANDROID_KEYSTORE_PATH := $(shell echo ${${VARNAME}}))
endif
check-keystore-exist:
diff --git a/build.gradle b/build.gradle
index 32ebc651..4007d688 100644
--- a/build.gradle
+++ b/build.gradle
@@ -319,6 +319,17 @@ android {
applicationId = 'org.medicmobile.webapp.mobile.musomali'
}
+ musomali_test {
+ dimension = 'brand'
+ applicationId = 'org.musohealth.webapp.mobile.musomali_test'
+ }
+
+ musomali_training {
+ dimension = 'brand'
+ applicationId = 'org.musohealth.webapp.mobile.musomali_training'
+ }
+
+
pih_malawi {
dimension = 'brand'
applicationId = 'org.medicmobile.webapp.mobile.pih_malawi'
@@ -386,7 +397,22 @@ android {
cht_rci {
dimension = 'brand'
- applicationId = 'org.medicmobile.webapp.mobile.cht_rci'
+ applicationId = 'org.musohealth.webapp.mobile.cht_rci'
+ }
+
+ cht_rci_test {
+ dimension = 'brand'
+ applicationId = 'org.musohealth.webapp.mobile.cht_rci_test'
+ }
+
+ cht_rci_test_cht4 {
+ dimension = 'brand'
+ applicationId = 'org.musohealth.webapp.mobile.cht_rci_test_cht4'
+ }
+
+ cht_rci_training {
+ dimension = 'brand'
+ applicationId = 'org.musohealth.webapp.mobile.cht_rci_training'
}
moh_mali_chw {
@@ -415,6 +441,7 @@ android {
applicationId = 'org.medicmobile.webapp.mobile.moh_mali_chw_training_three'
buildConfigField "boolean", "IS_TRAINING_APP", 'true'
}
+
moh_togo_uat {
dimension = 'brand'
applicationId = 'org.medicmobile.webapp.mobile.moh_togo_uat'
diff --git a/secrets/secrets-cht_rci_test.tar.gz.enc b/secrets/secrets-cht_rci_test.tar.gz.enc
index 78e2603f..d5b7e258 100644
Binary files a/secrets/secrets-cht_rci_test.tar.gz.enc and b/secrets/secrets-cht_rci_test.tar.gz.enc differ
diff --git a/secrets/secrets-cht_rci_test_cht4.tar.gz.enc b/secrets/secrets-cht_rci_test_cht4.tar.gz.enc
new file mode 100644
index 00000000..764ef255
Binary files /dev/null and b/secrets/secrets-cht_rci_test_cht4.tar.gz.enc differ
diff --git a/secrets/secrets-cht_rci_training.tar.gz.enc b/secrets/secrets-cht_rci_training.tar.gz.enc
new file mode 100644
index 00000000..a5b683df
Binary files /dev/null and b/secrets/secrets-cht_rci_training.tar.gz.enc differ
diff --git a/secrets/secrets-musomali_test.tar.gz.enc b/secrets/secrets-musomali_test.tar.gz.enc
new file mode 100644
index 00000000..e5d9c051
Binary files /dev/null and b/secrets/secrets-musomali_test.tar.gz.enc differ
diff --git a/secrets/secrets-musomali_test_cht4.tar.gz.enc b/secrets/secrets-musomali_test_cht4.tar.gz.enc
new file mode 100644
index 00000000..c5904537
Binary files /dev/null and b/secrets/secrets-musomali_test_cht4.tar.gz.enc differ
diff --git a/secrets/secrets-musomali_test_sh.tar.gz.enc b/secrets/secrets-musomali_test_sh.tar.gz.enc
new file mode 100644
index 00000000..642eb1ca
Binary files /dev/null and b/secrets/secrets-musomali_test_sh.tar.gz.enc differ
diff --git a/secrets/secrets-musomali_training.tar.gz.enc b/secrets/secrets-musomali_training.tar.gz.enc
new file mode 100644
index 00000000..19fad5b8
Binary files /dev/null and b/secrets/secrets-musomali_training.tar.gz.enc differ
diff --git a/src/cht_rci/res/mipmap-hdpi/ic_launcher.png b/src/cht_rci/res/mipmap-hdpi/ic_launcher.png
index baaa9569..b9a1899f 100644
Binary files a/src/cht_rci/res/mipmap-hdpi/ic_launcher.png and b/src/cht_rci/res/mipmap-hdpi/ic_launcher.png differ
diff --git a/src/cht_rci/res/mipmap-mdpi/ic_launcher.png b/src/cht_rci/res/mipmap-mdpi/ic_launcher.png
index c39d97ad..bdf12ab2 100644
Binary files a/src/cht_rci/res/mipmap-mdpi/ic_launcher.png and b/src/cht_rci/res/mipmap-mdpi/ic_launcher.png differ
diff --git a/src/cht_rci/res/mipmap-xhdpi/ic_launcher.png b/src/cht_rci/res/mipmap-xhdpi/ic_launcher.png
index 8454b063..e05e3cf6 100644
Binary files a/src/cht_rci/res/mipmap-xhdpi/ic_launcher.png and b/src/cht_rci/res/mipmap-xhdpi/ic_launcher.png differ
diff --git a/src/cht_rci/res/mipmap-xxhdpi/ic_launcher.png b/src/cht_rci/res/mipmap-xxhdpi/ic_launcher.png
index b5638b41..2ac1fa21 100644
Binary files a/src/cht_rci/res/mipmap-xxhdpi/ic_launcher.png and b/src/cht_rci/res/mipmap-xxhdpi/ic_launcher.png differ
diff --git a/src/cht_rci/res/mipmap-xxxhdpi/ic_launcher.png b/src/cht_rci/res/mipmap-xxxhdpi/ic_launcher.png
index a5b3345d..dae00aae 100644
Binary files a/src/cht_rci/res/mipmap-xxxhdpi/ic_launcher.png and b/src/cht_rci/res/mipmap-xxxhdpi/ic_launcher.png differ
diff --git a/src/cht_rci/res/values/strings.xml b/src/cht_rci/res/values/strings.xml
index 74b91f5a..efb5296a 100644
--- a/src/cht_rci/res/values/strings.xml
+++ b/src/cht_rci/res/values/strings.xml
@@ -1,5 +1,5 @@
- CHT-RCI
- muso-cdi.app.medicmobile.org
+ CHT MUSO RCI
+ cht.rci.app.musohealth.app
diff --git a/src/cht_rci_test/res/values/strings.xml b/src/cht_rci_test/res/values/strings.xml
index 4a504e9f..7a1b20cb 100644
--- a/src/cht_rci_test/res/values/strings.xml
+++ b/src/cht_rci_test/res/values/strings.xml
@@ -1,5 +1,5 @@
CHT-RCI-TEST
- muso-cdi.dev.medicmobile.org
+ cht.rci.test.musohealth.app
diff --git a/src/cht_rci_test_cht4/AndroidManifest.xml b/src/cht_rci_test_cht4/AndroidManifest.xml
new file mode 100644
index 00000000..c1291f6d
--- /dev/null
+++ b/src/cht_rci_test_cht4/AndroidManifest.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
diff --git a/src/cht_rci_test_cht4/res/mipmap-hdpi/ic_launcher.png b/src/cht_rci_test_cht4/res/mipmap-hdpi/ic_launcher.png
new file mode 100644
index 00000000..baaa9569
Binary files /dev/null and b/src/cht_rci_test_cht4/res/mipmap-hdpi/ic_launcher.png differ
diff --git a/src/cht_rci_test_cht4/res/mipmap-mdpi/ic_launcher.png b/src/cht_rci_test_cht4/res/mipmap-mdpi/ic_launcher.png
new file mode 100644
index 00000000..c39d97ad
Binary files /dev/null and b/src/cht_rci_test_cht4/res/mipmap-mdpi/ic_launcher.png differ
diff --git a/src/cht_rci_test_cht4/res/mipmap-xhdpi/ic_launcher.png b/src/cht_rci_test_cht4/res/mipmap-xhdpi/ic_launcher.png
new file mode 100644
index 00000000..8454b063
Binary files /dev/null and b/src/cht_rci_test_cht4/res/mipmap-xhdpi/ic_launcher.png differ
diff --git a/src/cht_rci_test_cht4/res/mipmap-xxhdpi/ic_launcher.png b/src/cht_rci_test_cht4/res/mipmap-xxhdpi/ic_launcher.png
new file mode 100644
index 00000000..b5638b41
Binary files /dev/null and b/src/cht_rci_test_cht4/res/mipmap-xxhdpi/ic_launcher.png differ
diff --git a/src/cht_rci_test_cht4/res/mipmap-xxxhdpi/ic_launcher.png b/src/cht_rci_test_cht4/res/mipmap-xxxhdpi/ic_launcher.png
new file mode 100644
index 00000000..a5b3345d
Binary files /dev/null and b/src/cht_rci_test_cht4/res/mipmap-xxxhdpi/ic_launcher.png differ
diff --git a/src/cht_rci_test_cht4/res/values/strings.xml b/src/cht_rci_test_cht4/res/values/strings.xml
new file mode 100644
index 00000000..e0359021
--- /dev/null
+++ b/src/cht_rci_test_cht4/res/values/strings.xml
@@ -0,0 +1,5 @@
+
+
+ CHT-RCI-TEST-CHT4
+ test-v4.cht.rci.musohealth.app:3402
+
diff --git a/src/cht_rci_training/AndroidManifest.xml b/src/cht_rci_training/AndroidManifest.xml
new file mode 100644
index 00000000..c1291f6d
--- /dev/null
+++ b/src/cht_rci_training/AndroidManifest.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
diff --git a/src/cht_rci_training/res/mipmap-hdpi/ic_launcher.png b/src/cht_rci_training/res/mipmap-hdpi/ic_launcher.png
new file mode 100644
index 00000000..a37f762c
Binary files /dev/null and b/src/cht_rci_training/res/mipmap-hdpi/ic_launcher.png differ
diff --git a/src/cht_rci_training/res/mipmap-mdpi/ic_launcher.png b/src/cht_rci_training/res/mipmap-mdpi/ic_launcher.png
new file mode 100644
index 00000000..1e13729a
Binary files /dev/null and b/src/cht_rci_training/res/mipmap-mdpi/ic_launcher.png differ
diff --git a/src/cht_rci_training/res/mipmap-xhdpi/ic_launcher.png b/src/cht_rci_training/res/mipmap-xhdpi/ic_launcher.png
new file mode 100644
index 00000000..e2c51cf5
Binary files /dev/null and b/src/cht_rci_training/res/mipmap-xhdpi/ic_launcher.png differ
diff --git a/src/cht_rci_training/res/mipmap-xxhdpi/ic_launcher.png b/src/cht_rci_training/res/mipmap-xxhdpi/ic_launcher.png
new file mode 100644
index 00000000..64f91d6f
Binary files /dev/null and b/src/cht_rci_training/res/mipmap-xxhdpi/ic_launcher.png differ
diff --git a/src/cht_rci_training/res/mipmap-xxxhdpi/ic_launcher.png b/src/cht_rci_training/res/mipmap-xxxhdpi/ic_launcher.png
new file mode 100644
index 00000000..e98a574c
Binary files /dev/null and b/src/cht_rci_training/res/mipmap-xxxhdpi/ic_launcher.png differ
diff --git a/src/cht_rci_training/res/values/strings.xml b/src/cht_rci_training/res/values/strings.xml
new file mode 100644
index 00000000..1a063198
--- /dev/null
+++ b/src/cht_rci_training/res/values/strings.xml
@@ -0,0 +1,5 @@
+
+
+ FORMATION MUSO RCI
+ cht.rci.training.musohealth.app
+
diff --git a/src/musomali/res/mipmap-hdpi/ic_launcher.png b/src/musomali/res/mipmap-hdpi/ic_launcher.png
index baaa9569..b9a1899f 100644
Binary files a/src/musomali/res/mipmap-hdpi/ic_launcher.png and b/src/musomali/res/mipmap-hdpi/ic_launcher.png differ
diff --git a/src/musomali/res/mipmap-mdpi/ic_launcher.png b/src/musomali/res/mipmap-mdpi/ic_launcher.png
index c39d97ad..bdf12ab2 100644
Binary files a/src/musomali/res/mipmap-mdpi/ic_launcher.png and b/src/musomali/res/mipmap-mdpi/ic_launcher.png differ
diff --git a/src/musomali/res/mipmap-xhdpi/ic_launcher.png b/src/musomali/res/mipmap-xhdpi/ic_launcher.png
index 8454b063..e05e3cf6 100644
Binary files a/src/musomali/res/mipmap-xhdpi/ic_launcher.png and b/src/musomali/res/mipmap-xhdpi/ic_launcher.png differ
diff --git a/src/musomali/res/mipmap-xxhdpi/ic_launcher.png b/src/musomali/res/mipmap-xxhdpi/ic_launcher.png
index b5638b41..2ac1fa21 100644
Binary files a/src/musomali/res/mipmap-xxhdpi/ic_launcher.png and b/src/musomali/res/mipmap-xxhdpi/ic_launcher.png differ
diff --git a/src/musomali/res/mipmap-xxxhdpi/ic_launcher.png b/src/musomali/res/mipmap-xxxhdpi/ic_launcher.png
index a5b3345d..dae00aae 100644
Binary files a/src/musomali/res/mipmap-xxxhdpi/ic_launcher.png and b/src/musomali/res/mipmap-xxxhdpi/ic_launcher.png differ
diff --git a/src/musomali/res/values/strings.xml b/src/musomali/res/values/strings.xml
index 6d210381..e0f2c738 100644
--- a/src/musomali/res/values/strings.xml
+++ b/src/musomali/res/values/strings.xml
@@ -1,5 +1,5 @@
- muso
+ CHT MUSO MALI
cht.mali.prod.musohealth.app
diff --git a/src/musomali_test/AndroidManifest.xml b/src/musomali_test/AndroidManifest.xml
new file mode 100644
index 00000000..dbcb1f0b
--- /dev/null
+++ b/src/musomali_test/AndroidManifest.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
diff --git a/src/musomali_test/res/mipmap-hdpi/ic_launcher.png b/src/musomali_test/res/mipmap-hdpi/ic_launcher.png
new file mode 100644
index 00000000..baaa9569
Binary files /dev/null and b/src/musomali_test/res/mipmap-hdpi/ic_launcher.png differ
diff --git a/src/musomali_test/res/mipmap-mdpi/ic_launcher.png b/src/musomali_test/res/mipmap-mdpi/ic_launcher.png
new file mode 100644
index 00000000..c39d97ad
Binary files /dev/null and b/src/musomali_test/res/mipmap-mdpi/ic_launcher.png differ
diff --git a/src/musomali_test/res/mipmap-xhdpi/ic_launcher.png b/src/musomali_test/res/mipmap-xhdpi/ic_launcher.png
new file mode 100644
index 00000000..8454b063
Binary files /dev/null and b/src/musomali_test/res/mipmap-xhdpi/ic_launcher.png differ
diff --git a/src/musomali_test/res/mipmap-xxhdpi/ic_launcher.png b/src/musomali_test/res/mipmap-xxhdpi/ic_launcher.png
new file mode 100644
index 00000000..b5638b41
Binary files /dev/null and b/src/musomali_test/res/mipmap-xxhdpi/ic_launcher.png differ
diff --git a/src/musomali_test/res/mipmap-xxxhdpi/ic_launcher.png b/src/musomali_test/res/mipmap-xxxhdpi/ic_launcher.png
new file mode 100644
index 00000000..a5b3345d
Binary files /dev/null and b/src/musomali_test/res/mipmap-xxxhdpi/ic_launcher.png differ
diff --git a/src/musomali_test/res/values/strings.xml b/src/musomali_test/res/values/strings.xml
new file mode 100644
index 00000000..20bf3eb9
--- /dev/null
+++ b/src/musomali_test/res/values/strings.xml
@@ -0,0 +1,5 @@
+
+
+ CHT-MUSO-TEST
+ cht.mali.test.musohealth.app
+
diff --git a/src/musomali_training/AndroidManifest.xml b/src/musomali_training/AndroidManifest.xml
new file mode 100644
index 00000000..dbcb1f0b
--- /dev/null
+++ b/src/musomali_training/AndroidManifest.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
diff --git a/src/musomali_training/res/mipmap-hdpi/ic_launcher.png b/src/musomali_training/res/mipmap-hdpi/ic_launcher.png
new file mode 100644
index 00000000..a37f762c
Binary files /dev/null and b/src/musomali_training/res/mipmap-hdpi/ic_launcher.png differ
diff --git a/src/musomali_training/res/mipmap-mdpi/ic_launcher.png b/src/musomali_training/res/mipmap-mdpi/ic_launcher.png
new file mode 100644
index 00000000..1e13729a
Binary files /dev/null and b/src/musomali_training/res/mipmap-mdpi/ic_launcher.png differ
diff --git a/src/musomali_training/res/mipmap-xhdpi/ic_launcher.png b/src/musomali_training/res/mipmap-xhdpi/ic_launcher.png
new file mode 100644
index 00000000..e2c51cf5
Binary files /dev/null and b/src/musomali_training/res/mipmap-xhdpi/ic_launcher.png differ
diff --git a/src/musomali_training/res/mipmap-xxhdpi/ic_launcher.png b/src/musomali_training/res/mipmap-xxhdpi/ic_launcher.png
new file mode 100644
index 00000000..64f91d6f
Binary files /dev/null and b/src/musomali_training/res/mipmap-xxhdpi/ic_launcher.png differ
diff --git a/src/musomali_training/res/mipmap-xxxhdpi/ic_launcher.png b/src/musomali_training/res/mipmap-xxxhdpi/ic_launcher.png
new file mode 100644
index 00000000..e98a574c
Binary files /dev/null and b/src/musomali_training/res/mipmap-xxxhdpi/ic_launcher.png differ
diff --git a/src/musomali_training/res/values/strings.xml b/src/musomali_training/res/values/strings.xml
new file mode 100644
index 00000000..37363d2e
--- /dev/null
+++ b/src/musomali_training/res/values/strings.xml
@@ -0,0 +1,5 @@
+
+
+ FORMATION MUSO MALI
+ cht.mali.training.musohealth.app
+
diff --git a/upload_certificate.pem b/upload_certificate.pem
new file mode 100644
index 00000000..d8a15f7e
--- /dev/null
+++ b/upload_certificate.pem
@@ -0,0 +1,21 @@
+-----BEGIN CERTIFICATE-----
+MIIDZDCCAkygAwIBAgIJAOElileVHuzDMA0GCSqGSIb3DQEBCwUAMF8xCzAJBgNV
+BAYTAk1MMQ0wCwYDVQQIEwRNYWxpMQ8wDQYDVQQHEwZCYW1ha28xDTALBgNVBAoT
+BE11c28xDTALBgNVBAsTBE11c28xEjAQBgNVBAMTCU11c28gTWFsaTAgFw0yNTEx
+MjAxNjE4MDdaGA8yMDUwMTExNDE2MTgwN1owXzELMAkGA1UEBhMCTUwxDTALBgNV
+BAgTBE1hbGkxDzANBgNVBAcTBkJhbWFrbzENMAsGA1UEChMETXVzbzENMAsGA1UE
+CxMETXVzbzESMBAGA1UEAxMJTXVzbyBNYWxpMIIBIjANBgkqhkiG9w0BAQEFAAOC
+AQ8AMIIBCgKCAQEAniosXjVd5u7S2ao76SLmr77xKEOShR56FRLV1kYayYcMOs1r
+Rj2KTWZGfE7iQ6BafIiLIInuGIlVlNx8g0ySPU7lplaET7rUKkh0Zq7ODvi7UZNs
+WHpHeAgw1ftOXGCv1HVqCm7gCMjwKec0C5IDWCYbQQ0T+7umWY/d1NwGMo5slc0J
+fyDD/L6QUZgs6dTnIJf4ozcCCi4E9csqtTPHOiOGEYsCtPhkEqZ/t9nKi42fGHjl
+0ERod2/h/DRg/e2AYiDgQo1yRXsEbd2ddXSpcJ0Lov6eM25vbBdjPyZphbFUNaVb
+OKYUZwWP1sBFaNYqxUbk6rDdm8Ru2ZH3ZOkBHwIDAQABoyEwHzAdBgNVHQ4EFgQU
+brCy6iaShxs0pvaCwV8qEmm523IwDQYJKoZIhvcNAQELBQADggEBAHl+qgjYHUuU
+CPXbu+ud7xh42W7g8khgDepT8IKrwR7DHw/l29LCOqjB+hQJ7IMFsk/ft4/QZCXF
+vdOoxD9fwkdR6cQ9uQiI8WCat/t2cuNRkRojE8GB6UyTa0UoXRTUsZIox2Z1mFfI
+GOophm4PtNO2JVzflCXbubemvVmytKw6IIaFAlLVQwCvRgProtieuH3K6wk6cwyD
+R2HZmtKEc8gz3bWGnN5qIikz8+8e+u1ZOjzxcKYYhz74VPvJmN6zr0LJ6vToyaqL
+CBoMx+pTAoMA/cAFWSmr2A21h+JJ9InnHn/UgMTDRVL+A3sGBdsL0tt2Qn56DnAl
++ZC3qBQdgto=
+-----END CERTIFICATE-----