Adds Flipper support to debug DB issues.

This commit is contained in:
2021-05-01 13:37:11 -07:00
parent 09197c8429
commit 258e62a28f
3 changed files with 28 additions and 1 deletions

View File

@@ -19,6 +19,9 @@
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.facebook.flipper.android.diagnostics.FlipperDiagnosticActivity"
android:exported="true" />
</application>
<uses-permission android:name="android.permission.INTERNET" />

View File

@@ -6,6 +6,14 @@ import android.content.res.Configuration;
import androidx.room.Room;
import com.facebook.flipper.android.AndroidFlipperClient;
import com.facebook.flipper.android.utils.FlipperUtils;
import com.facebook.flipper.core.FlipperClient;
import com.facebook.flipper.plugins.databases.DatabasesFlipperPlugin;
import com.facebook.flipper.plugins.inspector.DescriptorMapping;
import com.facebook.flipper.plugins.inspector.InspectorFlipperPlugin;
import com.facebook.flipper.plugins.navigation.NavigationFlipperPlugin;
import com.facebook.soloader.SoLoader;
import com.majinnaibu.monstercards.data.MonsterRepository;
public class MonsterCardsApplication extends Application {
@@ -31,8 +39,19 @@ public class MonsterCardsApplication extends Application {
public void onCreate() {
super.onCreate();
// Required initialization logic here!
SoLoader.init(this, false);
m_db = Room.databaseBuilder(getApplicationContext(), AppDatabase.class, "monsters").build();
if (BuildConfig.DEBUG && FlipperUtils.shouldEnableFlipper(this)) {
final FlipperClient client = AndroidFlipperClient.getInstance(this);
client.addPlugin(new InspectorFlipperPlugin(this, DescriptorMapping.withDefaults()));
client.addPlugin(new DatabasesFlipperPlugin(this));
client.addPlugin(NavigationFlipperPlugin.getInstance());
client.start();
}
m_db = Room.databaseBuilder(getApplicationContext(), AppDatabase.class, "monsters")
.fallbackToDestructiveMigrationOnDowngrade()
.build();
m_monsterLibraryRepository = new MonsterRepository(m_db);
}