package it.integry.integrywmsnative; import android.app.Application; import android.content.res.Configuration; import android.content.res.Resources; import javax.inject.Inject; 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; @Inject AppContext appContext; // 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(this); roomModule = new RoomModule(this); appComponent = DaggerMainApplicationComponent.builder() .mainApplicationModule(appModule) .roomModule(roomModule) .build(); appComponent.inject(this); 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); } }