Skip to content

Commit

Permalink
Adds intent for fixed_app_url so app
Browse files Browse the repository at this point in the history
When any link that has the same scheme and host as the branded flavor is clicked on the device, the user will have the option to open the link in the medic app.

medic/cht-core#6380
  • Loading branch information
dianabarsan authored and nijanthan committed Dec 30, 2020
1 parent 8e092e0 commit a237d11
Show file tree
Hide file tree
Showing 30 changed files with 76 additions and 36 deletions.
2 changes: 1 addition & 1 deletion src/bracuganda/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">BRAC</string>
<string name="fixed_app_url">https://brac-ug.app.medicmobile.org</string>
<string name="app_host">brac-ug.app.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/cic_guatemala/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">CiC Tijax</string>
<string name="fixed_app_url">https://cic-guatemalav2.app.medicmobile.org</string>
<string name="app_host">cic-guatemalav2.app.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/cmmb_kenya/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">CMMB MHealth - Kitui</string>
<string name="fixed_app_url">https://cmmb-kenya.app.medicmobile.org</string>
<string name="app_host">cmmb-kenya.app.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/ebpp_indonesia/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Yayasan Ekoturin</string>
<string name="fixed_app_url">https://ebpp-indonesia.app.medicmobile.org</string>
<string name="app_host">ebpp-indonesia.app.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/hope_through_health/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Hope Through Health</string>
<string name="fixed_app_url">https://hth-togo.app.medicmobile.org</string>
<string name="app_host">hth-togo.app.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/livinggoods/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Living Goods</string>
<string name="fixed_app_url">https://lg.app.medicmobile.org</string>
<string name="app_host">lg.app.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/livinggoods_assisted_networks/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">CHV - Toolkit</string>
<string name="fixed_app_url">https://kisii-an.app.smarthealth.livinggoods.org</string>
<string name="app_host">kisii-an.app.smarthealth.livinggoods.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/livinggoods_innovation_ke/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Living Goods (Innovation Network)</string>
<string name="fixed_app_url">https://lg-innovation-ke.app.medicmobile.org</string>
<string name="app_host">lg-innovation-ke.app.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/livinggoods_innovation_ke_hivst/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Living Goods (Innovation - HIVST)</string>
<string name="fixed_app_url">https://lg-innovation-hivst-facility-ke.app.medicmobile.org</string>
<string name="app_host">lg-innovation-hivst-facility-ke.app.medicmobile.org</string>
</resources>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Living Goods Supervisor (Innovation Network)</string>
<string name="fixed_app_url">https://lg-innovation-facility-ke.app.medicmobile.org</string>
<string name="app_host">lg-innovation-facility-ke.app.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/livinggoodskenya/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Living Goods</string>
<string name="fixed_app_url">https://lg-kenya.app.medicmobile.org</string>
<string name="app_host">lg-kenya.app.medicmobile.org</string>
</resources>
8 changes: 8 additions & 0 deletions src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -47,5 +47,13 @@
android:screenOrientation="portrait"/>
<activity android:name="SettingsDialogActivity"
android:screenOrientation="portrait"/>
<activity android:name="AppUrlIntentActivity" android:launchMode="singleInstance">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="@string/scheme" android:host="@string/app_host" android:pathPattern=".*"/>
</intent-filter>
</activity>
</application>
</manifest>
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
package org.medicmobile.webapp.mobile;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.net.Uri;

import static org.medicmobile.webapp.mobile.BuildConfig.DEBUG;
import static org.medicmobile.webapp.mobile.MedicLog.trace;

public class AppUrlIntentActivity extends Activity {
@Override public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent appLinkIntent = getIntent();
Uri appLinkData = appLinkIntent.getData();

if(DEBUG) trace(this, "TOKEN LOGIN=%s", appLinkData.toString());

startActivity(new Intent(Intent.ACTION_VIEW, appLinkData, this, EmbeddedBrowserActivity.class));
finish();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,9 @@ public void onReceiveValue(String result) {

enableUrlHandlers(container);

browseToRoot();
Intent appLinkIntent = getIntent();
Uri appLinkData = appLinkIntent.getData();
browseTo(appLinkData);

if(settings.allowsConfiguration()) {
toast(redactUrl(appUrl));
Expand Down Expand Up @@ -144,7 +146,7 @@ public void onReceiveValue(String result) {
openSettings();
return true;
case R.id.mnuHardRefresh:
browseToRoot();
browseTo(null);
return true;
case R.id.mnuLogout:
evaluateJavascript("angular.element(document.body).injector().get('AndroidApi').v1.logout()");
Expand Down Expand Up @@ -263,10 +265,17 @@ private String getRootUrl() {
"" : "/medic/_design/medic/_rewrite/");
}

private void browseToRoot() {
String url = getRootUrl();
if(DEBUG) trace(this, "Pointing browser to %s", redactUrl(url));
container.load(url, null);
private String getUrlToLoad(Uri url) {
if (url != null) {
return url.toString();
}
return getRootUrl();
}

private void browseTo(Uri url) {
String urlToLoad = getUrlToLoad(url);
if(DEBUG) trace(this, "Pointing browser to %s", redactUrl(urlToLoad));
container.load(urlToLoad, null);
}

private void enableRemoteChromeDebugging() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,10 +59,10 @@ static SettingsStore in(Context ctx) {
SettingsStore.class.getName(),
Context.MODE_PRIVATE);

String fixedAppUrl = ctx.getResources().
getString(R.string.fixed_app_url);
if(fixedAppUrl.length() > 0) {
return new BrandedSettingsStore(prefs, fixedAppUrl);
String appHost = ctx.getResources().getString(R.string.app_host);
String scheme = ctx.getResources().getString(R.string.scheme);
if(appHost.length() > 0) {
return new BrandedSettingsStore(prefs, scheme + "://" + appHost);
}

return new UnbrandedSettingsStore(prefs);
Expand Down
3 changes: 2 additions & 1 deletion src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@
<resources>
<string name="app_name">Medic Mobile</string>

<string name="fixed_app_url"/>
<string name="scheme">https</string>
<string name="app_host"/>

<string name="txtAppUrl">Webapp URL</string>
<string name="errAppUrl_serverNotFound">unable to contact server</string>
Expand Down
2 changes: 1 addition & 1 deletion src/medicmobiledemo/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Medic Mobile (demo)</string>
<string name="fixed_app_url">https://demo.dev.medicmobile.org</string>
<string name="app_host">demo.dev.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/moh_kenya_siaya_black/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">MOH Siaya Black</string>
<string name="fixed_app_url">https://moh-kenya-siaya.app.medicmobile.org</string>
<string name="app_host">moh-kenya-siaya.app.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/moh_kenya_siaya_green/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">MOH Siaya Green</string>
<string name="fixed_app_url">https://moh-kenya-siaya.app.medicmobile.org</string>
<string name="app_host">moh-kenya-siaya.app.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/moh_kenya_siaya_red/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">MOH Siaya Red</string>
<string name="fixed_app_url">https://moh-kenya-siaya.app.medicmobile.org</string>
<string name="app_host">moh-kenya-siaya.app.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/moh_kenya_siaya_white/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">MOH Siaya White</string>
<string name="fixed_app_url">https://moh-kenya-siaya.app.medicmobile.org</string>
<string name="app_host">moh-kenya-siaya.app.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/moh_mali/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">ASA-MALI</string>
<string name="fixed_app_url">https://supervisor-moh-mali.app.medicmobile.org</string>
<string name="app_host">supervisor-moh-mali.app.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/moh_zanzibar/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Jamii ni Afya</string>
<string name="fixed_app_url">https://moh-zanzibar.app.medicmobile.org</string>
<string name="app_host">moh-zanzibar.app.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/moh_zanzibar_training/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Darasa</string>
<string name="fixed_app_url">https://moh-zanzibar.dev.medicmobile.org</string>
<string name="app_host">moh-zanzibar.dev.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/musomali/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">muso</string>
<string name="fixed_app_url">https://muso-mali.app.medicmobile.org</string>
<string name="app_host">muso-mali.app.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/pih_malawi/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">YendaNafe</string>
<string name="fixed_app_url">https://pih-malawi.app.medicmobile.org</string>
<string name="app_host">pih-malawi.app.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/pih_malawi_supervisor/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">YendaNafe Supervisor</string>
<string name="fixed_app_url">https://pih-malawi.app.medicmobile.org</string>
<string name="app_host">pih-malawi.app.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/simprints/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Medic Mobile - Simprints</string>
<string name="fixed_app_url">https://simprints.app.medicmobile.org</string>
<string name="app_host">simprints.app.medicmobile.org</string>
</resources>
2 changes: 1 addition & 1 deletion src/surveillance_covid19_kenya/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Kenya Covid-19 Tracker</string>
<string name="fixed_app_url">https://tracing-covid19.health.go.ke</string>
<string name="app_host">tracing-covid19.health.go.ke</string>
</resources>
2 changes: 1 addition & 1 deletion src/vhw_burundi/res/values/strings.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Village Health Works Burundi</string>
<string name="fixed_app_url">https://villagehealthworks-burundi.app.medicmobile.org</string>
<string name="app_host">villagehealthworks-burundi.app.medicmobile.org</string>
</resources>

0 comments on commit a237d11

Please sign in to comment.