私のアプリには3つのアクティビティがあります:LoginActivity、PreferencesActivity、LoggedActivity。ダガー2:依存関係をいかに適切に再利用するか - コンポーネントとスコープを設計する方法
流れがあることができる:
- 1) LoginActivity - > PreferencesActivity(ユーザがログイン活動から環境設定を開くことができる)
- 2) LoginActivity - > LoggedActivity - > PreferenceActivity(ユーザが開くことができますいくつかの設定は隠されています)
私は3つのスコープと3つのコンポーネントが必要です:
@AppScopeと- AppComponent(APP-ワイドシングルトン)@ActivityScope(のみ各アクティビティの範囲)
有する他
私はこれらのすべてのコンポーネントを設計する方法がわかりません。私のPreferenceActivityでは、ユーザーがログインしているかどうかを知る必要があるからです。 LoginActivityからログインしていないときにすべての設定を表示する。
両方のケースを組み合わせるにはどうすればよいですか?
ありがとうございます。
しかし、 'UserComponent'は' LoggedActivity'で作成されるので、ユーザはログインしなければなりません。 'LoginActivity'から' PreferenceActivity'を開くこともできます。私はあなたのものに似ているかもしれないアイデアを持っています...それは、 'Application'クラスでは、ユーザーがログインしていない場合は' null'になる 'UserComponent'参照を保持しています。 – Tomask