diff --git a/app/src/main/java/eu/faircode/email/FragmentPro.java b/app/src/main/java/eu/faircode/email/FragmentPro.java
index deaa2cfc30..ceace6c4f6 100644
--- a/app/src/main/java/eu/faircode/email/FragmentPro.java
+++ b/app/src/main/java/eu/faircode/email/FragmentPro.java
@@ -58,6 +58,7 @@ public class FragmentPro extends FragmentBase implements SharedPreferences.OnSha
private TextView tvList;
private Button btnPurchase;
private ImageView ivExternal;
+ private TextView tvNoPlay;
private TextView tvPrice;
private TextView tvPriceHint;
private TextView tvFamilyHint;
@@ -85,6 +86,7 @@ public class FragmentPro extends FragmentBase implements SharedPreferences.OnSha
tvList = view.findViewById(R.id.tvList);
btnPurchase = view.findViewById(R.id.btnPurchase);
ivExternal = view.findViewById(R.id.ivExternal);
+ tvNoPlay = view.findViewById(R.id.tvNoPlay);
tvPrice = view.findViewById(R.id.tvPrice);
tvPriceHint = view.findViewById(R.id.tvPriceHint);
tvFamilyHint = view.findViewById(R.id.tvFamilyHint);
@@ -99,16 +101,10 @@ public class FragmentPro extends FragmentBase implements SharedPreferences.OnSha
.putExtra("navigate", true));
}
});
- btnBackup.setVisibility(View.GONE);
tvInfo.setText(getString(R.string.title_pro_info)
.replaceAll("^\\s+", "").replaceAll("\\s+", " "));
- long now = new Date().getTime();
- long banner_hidden = prefs.getLong("banner_hidden", 0);
- cbHide.setChecked(banner_hidden > 0 && now < banner_hidden);
- cbHide.setText(getString(R.string.title_pro_hide, HIDE_BANNER));
-
cbHide.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
@@ -170,12 +166,21 @@ public class FragmentPro extends FragmentBase implements SharedPreferences.OnSha
boolean play = (Helper.isPlayStoreInstall() || ActivityBilling.isTesting(getContext()));
+ long now = new Date().getTime();
+ long banner_hidden = prefs.getLong("banner_hidden", 0);
+ cbHide.setChecked(banner_hidden > 0 && now < banner_hidden);
+ cbHide.setText(getString(R.string.title_pro_hide, HIDE_BANNER));
+
tvPending.setVisibility(View.GONE);
tvActivated.setVisibility(View.GONE);
+ btnBackup.setVisibility(View.GONE);
cbHide.setVisibility(View.GONE);
btnPurchase.setEnabled(!play);
- tvPrice.setVisibility(View.GONE);
ivExternal.setVisibility(play ? View.GONE : View.VISIBLE);
+ tvPrice.setVisibility(View.GONE);
+ tvNoPlay.setVisibility(
+ BuildConfig.PLAY_STORE_RELEASE && !Helper.hasPlayStore(getContext())
+ ? View.VISIBLE : View.GONE);
tvFamilyHint.setVisibility(play ? View.VISIBLE : View.GONE);
tvRestoreHint.setVisibility(play ? View.VISIBLE : View.GONE);
btnConsume.setEnabled(false);
diff --git a/app/src/main/res/layout/fragment_pro.xml b/app/src/main/res/layout/fragment_pro.xml
index 30a388c819..88af38a0d0 100644
--- a/app/src/main/res/layout/fragment_pro.xml
+++ b/app/src/main/res/layout/fragment_pro.xml
@@ -94,6 +94,17 @@
app:layout_constraintTop_toTopOf="@+id/btnPurchase"
app:srcCompat="@drawable/twotone_open_in_new_24" />
+
+
+ app:layout_constraintTop_toBottomOf="@+id/tvNoPlay" />
List of pro features
Buy
%1$s (one-time purchase)
+ Play Store was not found
Developing FairEmail took literally thousands of hours and, despite that, most of the features are free to use.
FairEmail takes your privacy seriously and doesn\'t show ads and doesn\'t use tracking or analytics to earn money.