diff --git a/bramble-api/src/main/java/org/briarproject/bramble/api/db/DatabaseConfig.java b/bramble-api/src/main/java/org/briarproject/bramble/api/db/DatabaseConfig.java
index a9a95c47a2bdab6dcc1153725ee1000826723765..f096f1fec8e99185d0679846e536613525e38ec0 100644
--- a/bramble-api/src/main/java/org/briarproject/bramble/api/db/DatabaseConfig.java
+++ b/bramble-api/src/main/java/org/briarproject/bramble/api/db/DatabaseConfig.java
@@ -7,8 +7,6 @@ import java.io.File;
 @NotNullByDefault
 public interface DatabaseConfig {
 
-	boolean databaseExists();
-
 	File getDatabaseDirectory();
 
 	File getDatabaseKeyDirectory();
diff --git a/bramble-core/src/main/java/org/briarproject/bramble/db/H2Database.java b/bramble-core/src/main/java/org/briarproject/bramble/db/H2Database.java
index fd5be69056a57b2a3f13ca8c8476c015c4e958f1..f400d1ce984c7c485fb50a8828fb3c273fa482aa 100644
--- a/bramble-core/src/main/java/org/briarproject/bramble/db/H2Database.java
+++ b/bramble-core/src/main/java/org/briarproject/bramble/db/H2Database.java
@@ -50,8 +50,7 @@ class H2Database extends JdbcDatabase {
 	public boolean open(SecretKey key, @Nullable MigrationListener listener)
 			throws DbException {
 		this.key = key;
-		boolean reopen = config.databaseExists();
-		if (!reopen) config.getDatabaseDirectory().mkdirs();
+		boolean reopen = !config.getDatabaseDirectory().mkdirs();
 		super.open("org.h2.Driver", reopen, key, listener);
 		return reopen;
 	}
diff --git a/bramble-core/src/main/java/org/briarproject/bramble/db/HyperSqlDatabase.java b/bramble-core/src/main/java/org/briarproject/bramble/db/HyperSqlDatabase.java
index 0bfb66ea6eb2c00a2fe733f08032fc4bf62120d5..447537d8c8098a730e3c7ea217f1e7f001dd5c63 100644
--- a/bramble-core/src/main/java/org/briarproject/bramble/db/HyperSqlDatabase.java
+++ b/bramble-core/src/main/java/org/briarproject/bramble/db/HyperSqlDatabase.java
@@ -52,8 +52,7 @@ class HyperSqlDatabase extends JdbcDatabase {
 	public boolean open(SecretKey key, @Nullable MigrationListener listener)
 			throws DbException {
 		this.key = key;
-		boolean reopen = config.databaseExists();
-		if (!reopen) config.getDatabaseDirectory().mkdirs();
+		boolean reopen = !config.getDatabaseDirectory().mkdirs();
 		super.open("org.hsqldb.jdbc.JDBCDriver", reopen, key, listener);
 		return reopen;
 	}
diff --git a/bramble-core/src/test/java/org/briarproject/bramble/test/TestDatabaseConfig.java b/bramble-core/src/test/java/org/briarproject/bramble/test/TestDatabaseConfig.java
index 89f68a30ea0b86e1d04c2039a5445a2d5b00a674..1c626b483beb0fe426c8e7e9268f264b353cead9 100644
--- a/bramble-core/src/test/java/org/briarproject/bramble/test/TestDatabaseConfig.java
+++ b/bramble-core/src/test/java/org/briarproject/bramble/test/TestDatabaseConfig.java
@@ -17,13 +17,6 @@ public class TestDatabaseConfig implements DatabaseConfig {
 		this.maxSize = maxSize;
 	}
 
-	@Override
-	public boolean databaseExists() {
-		if (!dbDir.isDirectory()) return false;
-		File[] files = dbDir.listFiles();
-		return files != null && files.length > 0;
-	}
-
 	@Override
 	public File getDatabaseDirectory() {
 		return dbDir;
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/AndroidDatabaseConfig.java b/briar-android/src/main/java/org/briarproject/briar/android/AndroidDatabaseConfig.java
index 9aa2ac6ae02163c43101a945bf15bba78f1eae43..797fb907c129a904c3ee173774d7285cb3fd380c 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/AndroidDatabaseConfig.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/AndroidDatabaseConfig.java
@@ -4,16 +4,10 @@ import org.briarproject.bramble.api.db.DatabaseConfig;
 import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
 
 import java.io.File;
-import java.util.logging.Logger;
-
-import static java.util.logging.Level.INFO;
 
 @NotNullByDefault
 class AndroidDatabaseConfig implements DatabaseConfig {
 
-	private static final Logger LOG =
-			Logger.getLogger(AndroidDatabaseConfig.class.getName());
-
 	private final File dbDir, keyDir;
 
 	AndroidDatabaseConfig(File dbDir, File keyDir) {
@@ -21,38 +15,13 @@ class AndroidDatabaseConfig implements DatabaseConfig {
 		this.keyDir = keyDir;
 	}
 
-	@Override
-	public boolean databaseExists() {
-		// FIXME should not run on UiThread #620
-		if (!dbDir.isDirectory()) {
-			if (LOG.isLoggable(INFO))
-				LOG.info(dbDir.getAbsolutePath() + " is not a directory");
-			return false;
-		}
-		File[] files = dbDir.listFiles();
-		if (LOG.isLoggable(INFO)) {
-			if (files == null) {
-				LOG.info("Could not list files in " + dbDir.getAbsolutePath());
-			} else {
-				LOG.info("Files in " + dbDir.getAbsolutePath() + ":");
-				for (File f : files) LOG.info(f.getName());
-			}
-			LOG.info("Database exists: " + (files != null && files.length > 0));
-		}
-		return files != null && files.length > 0;
-	}
-
 	@Override
 	public File getDatabaseDirectory() {
-		if (LOG.isLoggable(INFO))
-			LOG.info("Database directory: " + dbDir.getAbsolutePath());
 		return dbDir;
 	}
 
 	@Override
 	public File getDatabaseKeyDirectory() {
-		if (LOG.isLoggable(INFO))
-			LOG.info("Database key directory: " + keyDir.getAbsolutePath());
 		return keyDir;
 	}
 
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/AppModule.java b/briar-android/src/main/java/org/briarproject/briar/android/AppModule.java
index 2296a8bafffb48d0e8c315e3460846b9b3d3bef8..3af71627783a7632a3f2c848456f200207a7b318 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/AppModule.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/AppModule.java
@@ -11,9 +11,7 @@ import org.briarproject.bramble.api.db.DatabaseConfig;
 import org.briarproject.bramble.api.event.EventBus;
 import org.briarproject.bramble.api.lifecycle.IoExecutor;
 import org.briarproject.bramble.api.lifecycle.LifecycleManager;
-import org.briarproject.bramble.api.nullsafety.MethodsNotNullByDefault;
 import org.briarproject.bramble.api.nullsafety.NotNullByDefault;
-import org.briarproject.bramble.api.nullsafety.ParametersNotNullByDefault;
 import org.briarproject.bramble.api.plugin.BackoffFactory;
 import org.briarproject.bramble.api.plugin.PluginConfig;
 import org.briarproject.bramble.api.plugin.duplex.DuplexPluginFactory;
@@ -86,11 +84,7 @@ public class AppModule {
 		File dbDir = app.getApplicationContext().getDir("db", MODE_PRIVATE);
 		File keyDir = app.getApplicationContext().getDir("key", MODE_PRIVATE);
 		StrictMode.setThreadPolicy(tp);
-		@MethodsNotNullByDefault
-		@ParametersNotNullByDefault
-		DatabaseConfig databaseConfig =
-				new AndroidDatabaseConfig(dbDir, keyDir);
-		return databaseConfig;
+		return new AndroidDatabaseConfig(dbDir, keyDir);
 	}
 
 	@Provides
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/controller/ConfigControllerImpl.java b/briar-android/src/main/java/org/briarproject/briar/android/controller/ConfigControllerImpl.java
index 1f730537115a2a30fb1aebc8a7249102928161ed..671b6cb6a7f0057a5eca72abf122290fa91959d6 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/controller/ConfigControllerImpl.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/controller/ConfigControllerImpl.java
@@ -76,8 +76,8 @@ public class ConfigControllerImpl implements ConfigController {
 
 	@Override
 	public boolean accountExists() {
-		String hex = getEncryptedDatabaseKey();
-		return hex != null && databaseConfig.databaseExists();
+		return getEncryptedDatabaseKey() != null &&
+				databaseConfig.getDatabaseDirectory().isDirectory();
 	}
 
 	@Override
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/login/SignInReminderReceiver.java b/briar-android/src/main/java/org/briarproject/briar/android/login/SignInReminderReceiver.java
index cf1edaae668db3a49a938478a3e7633066e3e79e..559757979f0708b8e4f632e75bd0b350215f8641 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/login/SignInReminderReceiver.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/login/SignInReminderReceiver.java
@@ -51,7 +51,8 @@ public class SignInReminderReceiver extends BroadcastReceiver {
 		if (action == null) return;
 		if (action.equals(ACTION_BOOT_COMPLETED) ||
 				action.equals(ACTION_MY_PACKAGE_REPLACED)) {
-			if (databaseConfig.databaseExists()) {
+			// TODO: Use account manager to check whether account exists
+			if (databaseConfig.getDatabaseDirectory().isDirectory()) {
 				SharedPreferences prefs = app.getDefaultSharedPreferences();
 				if (prefs.getBoolean(NOTIFY_SIGN_IN, true)) {
 					showSignInNotification(ctx);