前提・実現したいこと
iOSとのマルチプラットフォームプロジェクトです。
複数のBuildVariant(実際にはBuildTypeのみ定義し、Flavorは未使用)があるプロジェクトで、
いくつかのビルド前処理を、BuildTypeによって制御したいと考えています。
以下のようなことを実現したいです。
良い方法をご存知でしたらご教示お願いします。
BuildType
Debug, Test, Release
目的のtask
Debug
./Resources_Debug
と./Resources
以下を./assets
へSync
./xx_debug.properties
を./assets
へCopy
それ以外
./Resources
を./assets
へSync
./xx_(test/release).properties
を./assets
へCopy
発生している問題・エラーメッセージ
gradleのtask内で現在実行されたビルドのBuildTypeを参照することができていません。
試したこと
以下のような例ではうまくいきませんでした。
gradle
1ext { 2 currentType = '' 3} 4 5android { 6 buildTypes { 7 debug { 8 project.ext.set("currentType", "debug") 9 } 10 test { 11 project.ext.set("currentType", "test") 12 } 13 release { 14 project.ext.set("currentType", "release") 15 } 16 } 17} 18 19task SyncResoures(type: Sync) { 20 if (currentType == 'debug') { 21 from '~~~~' 22 } 23 . 24 . 25 . 26}
(設定フェーズで全ブロック(?)実行(?)されるため、currentType
には常に最後のrelease
が代入されている)
補足情報
発想がgradleのビルドの思想とズレているような気もしています…。

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。