ジャワからGradleの余分なプロパティにアクセスするには?

ILovemyPoncho:

私は自分のアプリケーションのためのいくつかのエスプレッソのテストをやっていると私は私のテストから実際のAPIと対話しています。だから、私はいくつかの環境変数からこれらのAPIの資格情報を読み取るためにしようとしています:

のは、私はNetflixのAPIを使用していましょう。私は中に資格情報を宣言bash_profileMAC上:

export NETFLIX_ID='123'
export NETFLIX_TOKEN='xxx'
launchctl setenv NETFLIX_ID $NETFLIX_ID
launchctl setenv NETFLIX_TOKEN $NETFLIX_TOKEN

今のGradleに、私はこのように、いくつかの追加のプロパティを作成します。

ext {
  netflixId = System.getenv("NETFLIX_ID")
  netflixToken = System.getenv("NETFLIX_TOKEN")
}

私は印刷する場合netflixIdと、netflixToken資格情報が正しく印刷され、意味がSystem.getenv()働いています。

私が今やろうとしていることは、Javaコードからそれらの余分のプロパティを読み取ることです。それを行う方法がある場合、あなたは知っていますか?またはより良い方法?任意の助けいただければ幸いです

laalto:

あなたのアプリケーションに環境変数の値を構築することができます。あなたは、でビルドコンフィグ分野のものを置くことができますbuild.gradle

android {
    defaultConfig {
        buildConfigField "String", "NETFLIX_ID", "\"" + System.getenv('NETFLIX_ID') + "\""
    }
}

これらの値は、生成されたコンパイル時に終わるBuildConfigことのGradleモジュールのAndroidManifestパッケージに対応するパッケージ内のクラスを、あなたはその後、使用できるBuildConfig.NETFLIX_ID値を使用します。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=20986&siteId=1