package it.integry.integrywmsnative; import android.app.Application; import android.content.res.Configuration; import android.content.res.Resources; import it.integry.integrywmsnative.core.context.AppContext; import it.integry.integrywmsnative.core.data_store.db.RoomModule; public class MainApplication extends Application { public static Resources res; // Reference to the application graph that is used across the whole app public static MainApplicationComponent appComponent; public static MainApplicationModule appModule; public static RoomModule roomModule; private AppContext appContext = new AppContext(this); // Called when the application is starting, before any other application objects have been created. // Overriding this method is totally optional! @Override public void onCreate() { super.onCreate(); appModule = new MainApplicationModule(MainApplication.this, this); roomModule = new RoomModule(this); appComponent = DaggerMainApplicationComponent.builder() .mainApplicationModule(appModule) .roomModule(roomModule) .build(); appContext.init(); res = getResources(); } // Called by the system when the device configuration changes while your component is running. // Overriding this method is totally optional! @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); } // This is called when the overall system is running low on memory, // and would like actively running processes to tighten their belts. // Overriding this method is totally optional! @Override public void onLowMemory() { super.onLowMemory(); } public static void exit() { System.exit(0); } }