3

私は、1 つのメイン モジュール (ここにはアクティビティとコントローラーがあります..) と、いくつかのカレンダーやその他の実装があるいくつかのセカンダリ モジュールを持つプロジェクトに取り組んでいます。

メイン モジュールには、アプリケーション コンテキストを格納するアプリケーション シングルトン クラスがあり、メイン モジュール内のどこからでもアプリケーション コンテキストを静的に取得できます。

問題は、セカンダリ モジュールで別のアプリケーション クラスを作成するにはどうすればよいかということです。現在、メイン モジュールとアプリ コンテキストが必要なモジュールとの間で循環依存関係を使用していますが、このアプローチを使用するのはあまり好きではありません。

4

1 に答える 1

0

@David Wasser は次のように書いています。

セカンダリ モジュールのコードが MainApp.getInstance() を呼び出してアプリケーション コンテキストを取得できないのはなぜですか? 明らかに、セカンダリ モジュールはメイン モジュールに依存しているため、これが循環依存であることがわかりません。

そうでない場合は、シングルトン アプリケーション コンテキストをメイン モジュールからセカンダリ モジュールに渡します (メソッド呼び出しのパラメーターとして、またはセカンダリ モジュールのコンポーネントのコンストラクターのパラメーターとして)。その後、セカンダリ モジュールにコードはありません。モジュール呼び出しMainApp.getInstance(). いずれの場合でも、アプリケーション クラスは 1 つしかないため、別のアプリケーション クラスを持つことはできません。

于 2015-06-10T13:36:13.647 に答える