2016-05-08 4 views
0

私のプロジェクトでは、デベロッパー固有の設定をローカル(Git以外)に保存しようとしています。たとえば、異なるサーバー構成(開発者、ステージ、ライブなど)で作業する必要があります。今のところ、設定はJavaコードでハードコードされており、ある開発者がある設定を変更するたびに、コードをgitにプッシュする前に元に戻す必要があります(そうしないと、他のすべての開発者のマシンの設定が変更されます)。プロジェクトを複製するたびに設定ファイルを手動で作成する必要がある(そうしなければプロジェクトはコンパイルされない)ので、gitからファイルを移動するのは良い選択肢ではないようです。Androidプロジェクトのデベロッパー固有のローカル設定を保存する

理想的には、私はコード内の構成を読むことができるところから、プロジェクト内にlocal.propertiesというファイルが必要です。単純なJavaプロジェクトでそれを行うのは簡単でしょう。しかし、私は同じように、FileReader in = new FileReader(new File("local.properties")))のように自分のプロジェクトに格納されているファイルを読むことができません。なぜなら、Androidはそのパスでファイルを見つけられないようだからです。それはAndroidデバイスのファイルシステムからそのファイルを読み込もうとしているようです。私は同じ理由で環境変数を使用することはできません。これを達成する最良の方法は何ですか?

+1

アセットフォルダがありますか? –

+0

Sergey Petrovが言及したように、あなたの最善の解決策はassetsフォルダ内のすべての設定を保存することです。そうでなければ、Javaファイルにすべての設定をハードコードし、実行時にif(BuildConfig.DEBUG) – insomniac

+0

ありがとうございます、私はそれを試みます –

答えて

1

strings.xmlと同じように、XMLファイルで行います。strings_local.xmlなどを作成し、そこに値を入力します。そのファイルを無視ファイルに追加して、ソース管理にチェックインされないようにします。そうしないと、同じ問題が発生します.Devはチェックインする前に変更を元に戻す必要があります。プロジェクトのクローン作成時に作業し、プロジェクトのルートにサンプルファイルを追加します。ここで、Androidはリソースファイルとしてファイルを選択せず​​、readmeに文書化します。

関連する問題