2016-07-25 5 views
3

カスタムGradleプラグインを作成する場合、消費するbuild.gradleのbuildtype/flavorで定義された拡張プロパティにどのようにアクセスできますか?カスタムグラデルプラグインでのビルドタイプ/フレーバー設定の処理

私は、次の拡張クラスを持っている - 私が作成し、Gradleのプラグインで

// default 
Test { 
    address = "default address" 
} 
android { 
    buildTypes { 
     release { 
      Test { 
       name = "release-mode" 
      } 
     } 
     } 
     debug { 
      Test { 
       name = "debug-mode" 
      } 
     } 
    } 
} 

を、別の実行 - こののGradleプラグインの

TestExtension { 
    String name; 
    String address; 

    // getters and setters 

    }; 

消費者は、以下に示すようにクロージャを使用してプロパティを移入う各ビルドタイプのタスク。特定のタスクが実行されているときに、どのように適切なプロパティにアクセスしますか?たとえば、releasetaskを実行したときに、私は右のnameプロパティを取得しません。常に "debug-mode"に設定されています。 ご協力いただければ幸いです! (Groovyで書かれた)カスタムのGradle - プラグインのapply(Project project){}方法 - 内部

答えて

1

project.android.applicationVariants.all{ variant -> 
    //do your variant specific code here 
} 
関連する問題