don't ask for 24h if user cancels dialog (eg clicking outside)

This commit is contained in:
Vincent Breitmoser
2018-07-16 11:58:26 +02:00
parent c5d7e482e0
commit 73a4dcdcb7
3 changed files with 20 additions and 1 deletions

View File

@@ -284,7 +284,8 @@ public class KeyListFragment extends RecyclerFragment<FlexibleAdapter<FlexibleKe
}
Preferences preferences = Preferences.getPreferences(context);
if (!Constants.DEBUG && !preferences.isAnalyticsHasConsent() && preferences.isAnalyticsAskedPolitely()) {
boolean askedBeforeAndWasRejected = preferences.isAnalyticsAskedPolitely() && !preferences.isAnalyticsHasConsent();
if (!Constants.DEBUG && askedBeforeAndWasRejected) {
return;
}
@@ -299,6 +300,14 @@ public class KeyListFragment extends RecyclerFragment<FlexibleAdapter<FlexibleKe
return;
}
long twentyFourHoursAgo = System.currentTimeMillis() - TimeUnit.DAYS.toMillis(1);
boolean askedLessThan24HoursAgo = preferences.getAnalyticsLastAsked() > twentyFourHoursAgo;
if (askedLessThan24HoursAgo) {
return;
}
preferences.setAnalyticsLastAskedNow();
TrackingManager trackingManager = ((KeychainApplication) requireActivity().getApplication()).getTrackingManager();
AlertDialog show = new Builder(context)
.setMessage(R.string.dialog_analytics_text)