私はfacebookとtwitterと他の多くのサービスに数十のapiキーを持っていますが、開発ビルドとステージングビルドのどちらをプロダクションビルドにするかによって、キーの値が異なる標準的な方法は何ですか?アンドロイドのための異なるビルド環境を持つ方法は?
11
A
答えて
5
スイッチブロックで静的フラグを使用してキーを定義することができます。これは、2つまたは3つの代替キーを持つ単純なプロジェクトで機能します。
本当にたくさんある場合、いくつかのプロジェクトで使用するには、それらをヘルパークラスに追加することをお勧めします。これにより、クラス内のコードの変更が最小限に抑えられます。
public class BuildHelper {
public static final int DEBUG=0;
public static final int STAGING=1;
public static final int PRODUCTION=2;
public static int BUILD;
public static String getFbKey() {
switch(BUILD) {
case DEBUG: return "xxx";
case STAGING: return "yyy";
case PRODUCTION: return "zzz";
}
return null;
}
public static String getTwitterKey() {
switch(BUILD) {
case DEBUG: return "xxx";
case STAGING: return "yyy";
case PRODUCTION: return "zzz";
}
return null;
}
}
としてそれを使用します:ような何か
public class YourClass extends Activity {
public static String FB_KEY;
public static String TWITTER_KEY;
//etc.
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
BuildHelper.BUILD=BuildHelper.DEBUG; // or STAGING or PRODUCTION
FB_KEY = BuildHelper.getFbKey();
TWITTER_KEY = BuildHelper.getTwitterKey();
//etc.
}
}
0
私は別のプロパティファイルでそれらを維持し、あなたがしているものに応じてビルドスクリプト/日食クラスパスに該当するプロパティファイルを参照しますやって
関連する問題
- 1. 異なるターゲット環境のクロスコンパイルのためのビルド環境を構築することは可能ですか?
- 2. 製品のライフサイクル中にビルド環境を維持する方法
- 3. 異なる開発者のための異なる「開発」環境
- 4. CakePHPの異なる環境は?
- 5. CSSと異なる環境
- 6. 異なる環境用の開発方法
- 7. Spring + Hibernate + C3P0環境でConnectionProviderをビルド/取得する方法は?
- 8. - (ダッシュ)オプションを持つ環境変数を設定する方法
- 9. 異なる環境(異なるURL)で同じテストで2つのサイトをテストする方法
- 10. NAntでパッケージ化、異なる環境を扱う方法
- 11. Facebookのアンドロイドのためのキーハッシュ異なるシステムで同じプロジェクトを持つ
- 12. コントロールIDのレンダリング環境が異なる
- 13. TESTとDEVELOPMENT環境の異なるデータソース
- 14. 異なる環境のブートレール3.1
- 15. アンドロイドの環境設定で '%'をエスケープする方法
- 16. 異なるブラウザでウェブサイトをテストするための環境設定
- 17. 開発環境と生産環境を持つGit
- 18. アンドロイドのデバッグ環境変数
- 19. 私はasp.netのC#でシステムを持っている、と私はシステムのための3環境持つクラス・パラメータ
- 20. 異なる環境のsecurity.ymlファイルが異なる
- 21. アンドロイドで環境設定ダイアログを開く方法は?
- 22. 開発環境と本番環境向けに異なるMETA-INF/context.xmlファイルを使用する方法
- 23. 2つの異なるデータベースアダプタ(SQL ServerとPostgreSQL)を同じ環境のRailsで使用する方法は?
- 24. Visual Studio(2008)でビルドするための環境変数を設定する
- 25. hudsonでビルドするための環境変数を設定する
- 26. あるJavacと異なる環境
- 27. 異なる言語のAndroid環境で異なるHTMLファイルを読み込む方法は?
- 28. 異なるバージョンの1つの依存関係を持つパッケージをビルドおよびデプロイする方法は?
- 29. 環境によって異なるactionRequest
- 30. 32および64ビットアプリケーション(C++)をビルドするためのLinux環境
私はこれに似た文字列varのランタイムチェックを終了しました – hunterp