diff --git a/app/build.gradle b/app/build.gradle index aac1e7bf13..ee0f2f2b25 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -86,8 +86,6 @@ def selectableVariants = [ 'playStagingFlipper', 'playStagingPerf', 'playStagingRelease', - 'studyProdMock', - 'studyProdPerf', 'websiteProdFlipper', 'websiteProdRelease', ] @@ -271,13 +269,6 @@ android { matchingFallbacks = ['debug'] buildConfigField "String", "BUILD_VARIANT_TYPE", "\"Perf\"" } - mock { - initWith debug - isDefault false - minifyEnabled false - matchingFallbacks = ['debug'] - buildConfigField "String", "BUILD_VARIANT_TYPE", "\"Mock\"" - } } productFlavors { @@ -307,16 +298,6 @@ android { buildConfigField "String", "BUILD_DISTRIBUTION_TYPE", "\"nightly\"" } - study { - dimension 'distribution' - - applicationIdSuffix ".study" - ext.websiteUpdateUrl = "null" - buildConfigField "boolean", "PLAY_STORE_DISABLED", "false" - buildConfigField "String", "NOPLAY_UPDATE_URL", "$ext.websiteUpdateUrl" - buildConfigField "String", "BUILD_DISTRIBUTION_TYPE", "\"study\"" - } - prod { dimension 'environment' diff --git a/app/src/mock/AndroidManifest.xml b/app/src/mock/AndroidManifest.xml deleted file mode 100644 index 8b035c9643..0000000000 --- a/app/src/mock/AndroidManifest.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - diff --git a/app/src/mock/java/org/thoughtcrime/securesms/MockAppDataInitializer.java b/app/src/mock/java/org/thoughtcrime/securesms/MockAppDataInitializer.java deleted file mode 100644 index 0fb1a0dadb..0000000000 --- a/app/src/mock/java/org/thoughtcrime/securesms/MockAppDataInitializer.java +++ /dev/null @@ -1,106 +0,0 @@ -package org.thoughtcrime.securesms; - -import android.app.Application; -import android.content.Context; - -import androidx.annotation.NonNull; - -import net.zetetic.database.sqlcipher.SQLiteDatabase; - -import org.signal.core.util.StreamUtil; -import org.thoughtcrime.securesms.crypto.IdentityKeyUtil; -import org.thoughtcrime.securesms.crypto.MasterSecret; -import org.thoughtcrime.securesms.crypto.MasterSecretUtil; -import org.thoughtcrime.securesms.database.KeyValueDatabase; -import org.thoughtcrime.securesms.database.SignalDatabase; -import org.thoughtcrime.securesms.keyvalue.SignalStore; -import org.thoughtcrime.securesms.recipients.Recipient; -import org.thoughtcrime.securesms.util.SetUtil; -import org.thoughtcrime.securesms.util.SqlUtil; -import org.thoughtcrime.securesms.util.TextSecurePreferences; - -import java.io.File; -import java.io.FileInputStream; -import java.io.IOException; -import java.util.List; -import java.util.Set; - -/** - * Helper to initialize app state with the right database contents, shared prefs, etc. - */ -final class MockAppDataInitializer { - - private static final Set IGNORED_TABLES = SetUtil.newHashSet( - "sqlite_sequence", - "sms_fts", - "sms_fts_data", - "sms_fts_idx", - "sms_fts_docsize", - "sms_fts_config", - "mms_fts", - "mms_fts_data", - "mms_fts_idx", - "mms_fts_docsize", - "mms_fts_config", - "emoji_search", - "emoji_search_data", - "emoji_search_idx", - "emoji_search_docsize", - "emoji_search_config" - ); - - public static void initialize(@NonNull Application application, @NonNull File sqlDirectory) throws IOException { - String localE164 = StreamUtil.readFullyAsString(new FileInputStream(new File(sqlDirectory, "e164.txt"))).trim(); - String mainSql = StreamUtil.readFullyAsString(new FileInputStream(new File(sqlDirectory, "signal.sql"))); - String keyValueSql = StreamUtil.readFullyAsString(new FileInputStream(new File(sqlDirectory, "signal-key-value.sql"))); - - initializeDatabase(SignalDatabase.getRawDatabase(), mainSql); - initializeDatabase(KeyValueDatabase.getInstance(application).getSqlCipherDatabase(), keyValueSql); - - initializePreferences(application, localE164); - - SignalStore.resetCache(); - } - - private static void initializeDatabase(@NonNull SQLiteDatabase db, @NonNull String sql) { - db.beginTransaction(); - try { - clearAllTables(db); - execStatements(db, sql); - - db.setTransactionSuccessful(); - } finally { - db.endTransaction(); - } - } - - private static void clearAllTables(@NonNull SQLiteDatabase db) { - List tables = SqlUtil.getAllTables(db); - - for (String table : tables) { - if (!IGNORED_TABLES.contains(table)) { - db.execSQL("DELETE FROM " + table); - } - } - } - - private static void execStatements(@NonNull SQLiteDatabase db, @NonNull String sql) { - List statements = SqlUtil.splitStatements(sql); - - for (String statement : statements) { - db.execSQL(statement); - } - } - - private static void initializePreferences(@NonNull Context context, @NonNull String localE164) { - MasterSecret masterSecret = MasterSecretUtil.generateMasterSecret(context, MasterSecretUtil.UNENCRYPTED_PASSPHRASE); - - MasterSecretUtil.generateAsymmetricMasterSecret(context, masterSecret); - IdentityKeyUtil.generateIdentityKeys(context); - - TextSecurePreferences.setPromptedPushRegistration(context, true); - SignalStore.account().setE164(localE164); - SignalStore.account().setAci(Recipient.external(context, localE164).requireAci()); - SignalStore.account().setRegistered(true); - } -} diff --git a/app/src/mock/java/org/thoughtcrime/securesms/MockApplicationContext.java b/app/src/mock/java/org/thoughtcrime/securesms/MockApplicationContext.java deleted file mode 100644 index 5686bccefe..0000000000 --- a/app/src/mock/java/org/thoughtcrime/securesms/MockApplicationContext.java +++ /dev/null @@ -1,18 +0,0 @@ -package org.thoughtcrime.securesms; - -import java.io.File; -import java.io.IOException; - -public class MockApplicationContext extends ApplicationContext { - - @Override - public void onCreate() { - super.onCreate(); - - try { - MockAppDataInitializer.initialize(this, new File(getExternalFilesDir(null), "mock-data")); - } catch (IOException e) { - throw new IllegalStateException("Failed to initialize mock data!", e); - } - } -} diff --git a/app/src/study/res/mipmap-anydpi-v26/ic_launcher.xml b/app/src/study/res/mipmap-anydpi-v26/ic_launcher.xml deleted file mode 100644 index df74352da7..0000000000 --- a/app/src/study/res/mipmap-anydpi-v26/ic_launcher.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file