3

Android アプリケーションの Service と Activity の両方で Singleton Java クラスを使用する潜在的な問題はありますか?

例: シングルトンはシングルトン アクティビティはサービス S

Service S には Singleton へのハンドルがあります。S は Singleton に Activity の起動を要求します。アクティビティは、Singleton で定義された操作メソッドを呼び出します。

アプリケーションには、機能領域のさまざまな操作をカプセル化するシングルトンがいくつかあります。そのため、アクティビティはさまざまなシングルトンとやり取りしてさまざまな操作を実行します。

4

2 に答える 2

3

通常、問題は発生しません。唯一のケースあなたはそれを期待することができました-別のプロセスで実行されているサービスを使用します(サービスには「。」で始まるandroid:process属性が定義されています)。その場合、シングルトンのインスタンスが2つあります(プロセスごとに1つ)。

于 2012-10-30T02:47:45.790 に答える
3

このアプローチに問題はないと思います。私はシングルトンを頻繁に使用していますが、問題はありませんでした。Android は、メモリが必要なときにシングルトン インスタンスを削除する可能性があることに注意してください。そのため、シングルトン インスタンスを取得するたびに null をチェックする必要があります。

于 2012-10-30T00:23:31.290 に答える