为什么我们在Android中扩展应用程序类

Üma*_*mån -5 android

为什么我们扩展应用程序类。Android应用即使没有扩展也能正常运行。

任何人都可以将这种情况解释为我们到底为什么要对其进行扩展。

例如:

public class MyApp extends Application {

    private static MyApp app;
    private ImageDownloaderComponent imageDownloaderComponent;

    @Override
    public void onCreate() {
        super.onCreate();
        app = this;
        imageDownloaderComponent = DaggerImageDownloaderComponent.builder().imageDownloaderModule(new ImageDownloaderModule(this)).build();
    }

}
Run Code Online (Sandbox Code Playgroud)

Com*_*are 7

Android应用即使没有扩展也能正常运行。

Android应用程序可以正常运行而无需扩展它。它们可以正常运行而不会扩展ActivityApplication当它对您有用时,您便会扩展。

任何人都可以将这种情况解释为我们到底为什么要对其进行扩展。

它用于应始终发生的每个进程的初始化,而不仅仅是用于某些活动或其他组件。

因此,例如,您可以初始化:

  • 依赖注入(例如Dagger)
  • 崩溃日志记录(例如ACRA)
  • 诊断工具(例如,LeakCanary,Stetho,Sonar)
  • 全局池(例如OkHttpClient

理想情况下,您要进行尽可能少的初始化,因为每次您对进程进行分叉时,都会在主应用程序线程上执行此初始化。但是,对于应该在执行任何应用程序逻辑之前进行设置的事情通常很方便。