Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/386.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/234.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 每个活动的Dagger 2自定义范围_Java_Android_Dependency Injection_Dagger 2 - Fatal编程技术网

Java 每个活动的Dagger 2自定义范围

Java 每个活动的Dagger 2自定义范围,java,android,dependency-injection,dagger-2,Java,Android,Dependency Injection,Dagger 2,我是否需要为每个活动创建每个范围?我不能为片段的每个活动只定义一个默认范围吗?您可以轻松地将一个@ActivityScope或@ActivityScope对象应用于多个同级活动组件,并且它将按照您期望的方式工作:只要您为每个活动实例创建一个新的子组件,然后每个人都可以访问将位于各自组件中的@ActivityScope绑定 @ApplicationScope @Component(/* ... */) interface ApplicationComponent { FooActivitySu

我是否需要为每个活动创建每个范围?我不能为片段的每个活动只定义一个默认范围吗?

您可以轻松地将一个
@ActivityScope
@ActivityScope
对象应用于多个同级活动组件,并且它将按照您期望的方式工作:只要您为每个活动实例创建一个新的子组件,然后每个人都可以访问将位于各自组件中的
@ActivityScope
绑定

@ApplicationScope @Component(/* ... */)
interface ApplicationComponent {
  FooActivitySubcomponent createFoo();
  BarActivitySubcomponent createBar();
  // ...
}

@ActivityScope @Subcomponent(/* ... */)
interface FooActivitySubcomponent {
  void inject(FooActivity activity);
  // ...
}

@ActivityScope @Subcomponent(/* ... */)
interface BarActivitySubcomponent {
  void inject(BarActivity activity);
  // ...
}

当然,这是在生产中指定子组件的更好方法,当然也是创建这样的结构的自动方法。

这取决于您的需要。您的实例在活动之间共享,或者每个活动都必须有自己的对象实例