From 67b2f1ca5b4a7fc5d70054c70f8b2a50679067d8 Mon Sep 17 00:00:00 2001 From: M66B Date: Wed, 10 Oct 2018 13:45:50 +0000 Subject: [PATCH] Added invite --- .../java/eu/faircode/email/ActivityView.java | 21 +++++++++++++++++++ app/src/main/res/values/strings.xml | 3 +++ 2 files changed, 24 insertions(+) diff --git a/app/src/main/java/eu/faircode/email/ActivityView.java b/app/src/main/java/eu/faircode/email/ActivityView.java index 8054281e..3c98a160 100644 --- a/app/src/main/java/eu/faircode/email/ActivityView.java +++ b/app/src/main/java/eu/faircode/email/ActivityView.java @@ -92,6 +92,7 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB static final int REQUEST_ERROR = 3; static final int REQUEST_ATTACHMENT = 1; + static final int REQUEST_INVITE = 2; static final String ACTION_VIEW_MESSAGES = BuildConfig.APPLICATION_ID + ".VIEW_MESSAGES"; static final String ACTION_VIEW_MESSAGE = BuildConfig.APPLICATION_ID + ".VIEW_MESSAGE"; @@ -164,6 +165,9 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB case R.string.menu_rate: onMenuRate(); break; + case R.string.menu_invite: + onMenuInvite(); + break; case R.string.menu_other: onMenuOtherApps(); break; @@ -222,6 +226,9 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB drawerArray.add(new DrawerItem(R.layout.item_drawer_separator)); + if (getIntentInvite().resolveActivity(getPackageManager()) != null) + drawerArray.add(new DrawerItem(ActivityView.this, R.layout.item_drawer, R.drawable.baseline_people_24, R.string.menu_invite)); + if (getIntentRate().resolveActivity(getPackageManager()) != null) drawerArray.add(new DrawerItem(ActivityView.this, R.layout.item_drawer, R.drawable.baseline_star_24, R.string.menu_rate)); @@ -567,6 +574,16 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB return intent; } + private Intent getIntentInvite() { + Intent intent = new Intent("com.google.android.gms.appinvite.ACTION_APP_INVITE"); + intent.setPackage("com.google.android.gms"); + intent.putExtra("com.google.android.gms.appinvite.TITLE", getString(R.string.menu_invite)); + intent.putExtra("com.google.android.gms.appinvite.MESSAGE", getString(R.string.title_try)); + intent.putExtra("com.google.android.gms.appinvite.BUTTON_TEXT", getString(R.string.title_try)); + // com.google.android.gms.appinvite.DEEP_LINK_URL + return intent; + } + private Intent getIntentOtherApps() { Intent intent = new Intent(Intent.ACTION_VIEW); intent.setData(Uri.parse("https://play.google.com/store/apps/dev?id=8420080860664580239")); @@ -652,6 +669,10 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB } } + private void onMenuInvite() { + startActivityForResult(getIntentInvite(), REQUEST_INVITE); + } + private void onMenuOtherApps() { Helper.view(this, getIntentOtherApps()); } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index fe04d7c6..97354dac 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -39,6 +39,7 @@ Pro features Privacy About + Invite Rate this app Other apps @@ -266,6 +267,8 @@ No Undo + Try FairEmail, an open source, privacy friendly email app for Android + This is a pro feature List of pro features Buy