package com.databases.example.app;
import android.app.Application;
import android.content.SharedPreferences;
import android.preference.PreferenceManager;
import com.crashlytics.android.Crashlytics;
import com.crashlytics.android.core.CrashlyticsCore;
import com.databases.example.BuildConfig;
import com.databases.example.R;
import com.databases.example.database.DatabaseUtils;
import io.fabric.sdk.android.Fabric;
import timber.log.Timber;
/**
* Created by kwelsh on 3/4/17.
* Provide our own Application so we have an easy way to setup Fabric Crash Reporting
*/
public class FinanceApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
// Set up Crashlytics, disabled for builds of the type "developer"
Crashlytics crashlyticsKit = new Crashlytics.Builder()
.core(new CrashlyticsCore.Builder().disabled(!BuildConfig.REPORT_CRASHES).build())
.build();
Fabric.with(this, crashlyticsKit);
//Set up logging
if (BuildConfig.REPORT_LOGS) {
Timber.plant(new Timber.DebugTree());
}
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
if (prefs.getBoolean(getString(R.string.pref_key_first_run), true)) {
DatabaseUtils.addDefaultCategories(this);
prefs.edit().putBoolean(getString(R.string.pref_key_first_run), false).apply();
}
}
}