Чертежи архитектуры Android [todo-mvp-dagger] @ActivityScoped, @FragmentScoped - PullRequest
2 голосов
/ 21 марта 2019

Глядя на https://github.com/googlesamples/android-architecture/blob/todo-mvp-dagger/todoapp/app/src/main/java/com/example/android/architecture/blueprints/todoapp/tasks/TasksFragment.java:

@ActivityScoped
public class TasksFragment extends DaggerFragment implements TasksContract.View {

и https://github.com/googlesamples/android-architecture/blob/todo-mvp-dagger/todoapp/app/src/main/java/com/example/android/architecture/blueprints/todoapp/tasks/TasksModule.java:

@Module
public abstract class TasksModule {
    @FragmentScoped
    @ContributesAndroidInjector
    abstract TasksFragment tasksFragment();
  1. Почему @ActivityScoped применяется непосредственно к TaskFragment?Не следует применять к методу taskFragment, в TaskModule?
  2. Почему @ActivityScoped и @FragmentScoped используются одновременно в одном и том же фрагменте?

Заранее спасибо!

1 Ответ

0 голосов
/ 29 апреля 2019

Поскольку область фрагмента должна знать, вставлен ли он в область действия, генерация кода для определения области действия предназначена для уменьшения объема памяти.Таким образом, активность и фрагмент могут совместно использовать память.

...