如何在 Android 应用程序中使用 Dragger 库?
Dagger 是一个适用于 Android、 Java和 Kotlin 的框架。 Dagger 用于最小化项目复杂性,您可以删除 Android 应用程序中可能存在问题的所有依赖注入或服务定位器。 Matic 依赖于项目的大小。 Dagger 自动生成模仿代码的代码。让我们知道 Dagger 是如何工作的。
匕首的工作
为下图所示的 UserRepository 类创建一个简单的工厂
用户本地数据源
/
/
/
/
用户责任
\
\
\
\
用户远程数据源
用户存储库如下:
public class ThisIsUserRepository {
private final ThisIsUserLocalDataSource userLocalDataSource;
private final ThisIsUserRemoteDataSource userRemoteDataSource;
public UserRepository(ThisIsUserLocalDataSource userLocalDataSource, ThisIsUserResponsibility
this.userLocalDataSource = userLocalDataSource;
this.userRemoteDataSource = userRemoteDataSource;
}
}
Dagger 在 Android 中的工作原理
让我们以一个带有依赖图的 Android App 为例
当地活动
|用户本地源
| /
| /
登录 ViewModel——>User Repository——>UserRemoteDataSource
|
|
改造
基本上,如果我们需要在应用程序中使用 Dagger,我们会创建一个存在于应用程序中的 Dagger 图。只要应用程序正在运行,图形的实例就可用。这就是图表附加到应用程序生命周期的方式。这种方法的一个优点是图形可用于其他 android 框架类。这是用于此的简单Java代码
public interface ThisIsApplicationComponent {
}
public class ThisIsMyApplication extends Application {
ThisIsApplicationComponent appComponent = ThisIsDaggerApplicationComponent.create();
}