diff --git a/app/src/main/java/org/thoughtcrime/securesms/AppInitialization.java b/app/src/main/java/org/thoughtcrime/securesms/AppInitialization.java index 569ad0ae5f..47a4259a22 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/AppInitialization.java +++ b/app/src/main/java/org/thoughtcrime/securesms/AppInitialization.java @@ -33,10 +33,9 @@ public final class AppInitialization { InsightsOptOut.userRequestedOptOut(context); TextSecurePreferences.setAppMigrationVersion(context, ApplicationMigrations.CURRENT_VERSION); TextSecurePreferences.setJobManagerVersion(context, JobManager.CURRENT_VERSION); - TextSecurePreferences.setLastExperienceVersionCode(context, Util.getCanonicalVersionCode()); + TextSecurePreferences.setLastVersionCode(context, Util.getCanonicalVersionCode()); TextSecurePreferences.setHasSeenStickerIntroTooltip(context, true); TextSecurePreferences.setPasswordDisabled(context, true); - TextSecurePreferences.setLastExperienceVersionCode(context, Util.getCanonicalVersionCode()); TextSecurePreferences.setReadReceiptsEnabled(context, true); TextSecurePreferences.setTypingIndicatorsEnabled(context, true); TextSecurePreferences.setHasSeenWelcomeScreen(context, false); @@ -73,10 +72,9 @@ public final class AppInitialization { InsightsOptOut.userRequestedOptOut(context); TextSecurePreferences.setAppMigrationVersion(context, ApplicationMigrations.CURRENT_VERSION); TextSecurePreferences.setJobManagerVersion(context, JobManager.CURRENT_VERSION); - TextSecurePreferences.setLastExperienceVersionCode(context, Util.getCanonicalVersionCode()); + TextSecurePreferences.setLastVersionCode(context, Util.getCanonicalVersionCode()); TextSecurePreferences.setHasSeenStickerIntroTooltip(context, true); TextSecurePreferences.setPasswordDisabled(context, true); - TextSecurePreferences.setLastExperienceVersionCode(context, Util.getCanonicalVersionCode()); ApplicationDependencies.getMegaphoneRepository().onFirstEverAppLaunch(); SignalStore.onFirstEverAppLaunch(); ApplicationDependencies.getJobManager().add(StickerPackDownloadJob.forInstall(BlessedPacks.ZOZO.getPackId(), BlessedPacks.ZOZO.getPackKey(), false)); diff --git a/app/src/main/java/org/thoughtcrime/securesms/migrations/ApplicationMigrations.java b/app/src/main/java/org/thoughtcrime/securesms/migrations/ApplicationMigrations.java index 8c5e3c3c64..f8c4603e11 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/migrations/ApplicationMigrations.java +++ b/app/src/main/java/org/thoughtcrime/securesms/migrations/ApplicationMigrations.java @@ -92,9 +92,10 @@ public class ApplicationMigrations { static final int DB_REACTIONS_MIGRATION = 48; //static final int CHANGE_NUMBER_CAPABILITY_3 = 49; static final int PNI = 50; + static final int FIX_DEPRECATION = 51; // Only used to trigger clearing the 'client deprecated' flag } - public static final int CURRENT_VERSION = 50; + public static final int CURRENT_VERSION = 51; /** * This *must* be called after the {@link JobManager} has been instantiated, but *before* the call diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/TextSecurePreferences.java b/app/src/main/java/org/thoughtcrime/securesms/util/TextSecurePreferences.java index 48f14e2abc..f59bdd1a81 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/TextSecurePreferences.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/TextSecurePreferences.java @@ -60,7 +60,6 @@ public class TextSecurePreferences { public static final String ENABLE_MANUAL_MMS_PREF = "pref_enable_manual_mms"; private static final String LAST_VERSION_CODE_PREF = "last_version_code"; - private static final String LAST_EXPERIENCE_VERSION_PREF = "last_experience_version_code"; public static final String RINGTONE_PREF = "pref_key_ringtone"; public static final String VIBRATE_PREF = "pref_key_vibrate"; private static final String NOTIFICATION_PREF = "pref_key_enable_notifications"; @@ -814,20 +813,12 @@ public class TextSecurePreferences { return getIntegerPreference(context, LAST_VERSION_CODE_PREF, Util.getCanonicalVersionCode()); } - public static void setLastVersionCode(Context context, int versionCode) throws IOException { + public static void setLastVersionCode(Context context, int versionCode) { if (!setIntegerPrefrenceBlocking(context, LAST_VERSION_CODE_PREF, versionCode)) { - throw new IOException("couldn't write version code to sharedpreferences"); + throw new AssertionError("couldn't write version code to sharedpreferences"); } } - public static int getLastExperienceVersionCode(Context context) { - return getIntegerPreference(context, LAST_EXPERIENCE_VERSION_PREF, 0); - } - - public static void setLastExperienceVersionCode(Context context, int versionCode) { - setIntegerPrefrence(context, LAST_EXPERIENCE_VERSION_PREF, versionCode); - } - /** * @deprecated Use {@link SettingsValues#getTheme()} via {@link org.thoughtcrime.securesms.keyvalue.SignalStore} instead. */ diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/VersionTracker.java b/app/src/main/java/org/thoughtcrime/securesms/util/VersionTracker.java index 02f29ade35..b5488b696d 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/VersionTracker.java +++ b/app/src/main/java/org/thoughtcrime/securesms/util/VersionTracker.java @@ -22,20 +22,17 @@ public class VersionTracker { } public static void updateLastSeenVersion(@NonNull Context context) { - try { - int currentVersionCode = Util.getCanonicalVersionCode(); - int lastVersionCode = TextSecurePreferences.getLastVersionCode(context); + int currentVersionCode = Util.getCanonicalVersionCode(); + int lastVersionCode = TextSecurePreferences.getLastVersionCode(context); - if (currentVersionCode != lastVersionCode) { - Log.i(TAG, "Upgraded from " + lastVersionCode + " to " + currentVersionCode); - SignalStore.misc().clearClientDeprecated(); - TextSecurePreferences.setLastVersionCode(context, currentVersionCode); - ApplicationDependencies.getJobManager().add(new RemoteConfigRefreshJob()); - LocalMetrics.getInstance().clear(); - } - } catch (IOException ioe) { - throw new AssertionError(ioe); + if (currentVersionCode != lastVersionCode) { + Log.i(TAG, "Upgraded from " + lastVersionCode + " to " + currentVersionCode); + SignalStore.misc().clearClientDeprecated(); + ApplicationDependencies.getJobManager().add(new RemoteConfigRefreshJob()); + LocalMetrics.getInstance().clear(); } + + TextSecurePreferences.setLastVersionCode(context, currentVersionCode); } public static long getDaysSinceFirstInstalled(Context context) {