0

ライブラリ プロジェクトを作成し、プロパティを .properties ファイル (release.properties および test.properties) に保存しました。プロパティ オブジェクトを使用してアクセスします。どのファイルにアクセスするかは、ブール値 (DEBUG true/false) に依存します。

ただし、自分の lib-project を使用する app-project を作成し、この app-project の 1 つのプロパティ値が lib と異なる場合は、ファイル全体を app-project にコピーして、異なる 1 行を変更する必要があります。 .

これは悪い状況です。ライブラリ プロジェクトの .properties に行を追加する場合は、lib プロジェクトの行を変更する場合と同じように、すべてのアプリ プロジェクトに追加する必要があります。

問題は、app-project の .properties ファイルが lib-project の WHOLE ファイルを上書きすることです。この上書きは行ベースではありません。

これに対する解決策はありますか?

4

1 に答える 1

0

答えは、初期化時に default.properties (ライブラリ プロジェクトから) と my.properties (アプリ プロジェクトから) の 2 つのプロパティ ファイルを 2 つの異なる Properties オブジェクトに読み込む CustomProperties クラスを作成することです。

CustomProperties で: String、int、boolean などのゲッターを作成し、これらのメソッドで my.properties に値が含まれているかどうかを確認し、含まれている場合はこの値を返し、含まれていない場合は default.properties から値を返します。

デバッグ設定 (true または false) に応じて、デバッグ ファイルとライブ ファイルのどちらを取得するかを選択します。したがって、ライブラリ プロジェクトに 2 つ (デバッグ + ライブ)、アプリ プロジェクトに 2 つ (デバッグ + ライブ) の 4 つのプロパティ ファイルがあります。

于 2013-12-23T08:31:36.163 に答える