我有一個Android Studio應用程序,現在有近100個與它關聯的「productFlavors」,當然全部在build.gradle
中定義。我想從命令行構建它們,因爲在IDE中一次構建它們將是一場噩夢。當我在使用命令行gradlew.bat assembleRelease
構建它們的過程中遇到錯誤時,出現了我的問題。一旦我解決了這個錯誤,我想在失敗的時候開始構建(可能有50個版本),而不是在開始階段。 Gradle有沒有辦法做到這一點?用Ant我不得不將它們評論出來,我希望Gradle有一個更好的方法,因爲結構在文件中更加複雜。Android gradlew.bat assembleRelease選擇開始包
UPDATE
我終於與涵蓋搖籃和Ant(難吃的,但它的工作原理)的解決方案。基本上我想建立在我的100個白標籤風格上,帶有版本的前綴,然後將它複製到沒有版本的交付APK。要做到這一點我的Ant腳本的樣子:
#!/bin/sh
DEPLOY_DIR=C:/AndroidBuilds/MyCompany.Build
VERSION="63"
NAME="WhiteLabel1"
DEPLOY_FOLDER="whitelabel1"
APK_NAME=$NAME$".apk"
gradlew assemble$NAME
cp $DEPLOY_DIR/$DEPLOY_FOLDER/$VERSION"-"$APK_NAME $DEPLOY_DIR/$DEPLOY_FOLDER/$APK_NAME
NAME="WhiteLabel2"
DEPLOY_FOLDER="whitelabel2"
APK_NAME=$NAME$".apk"
gradlew assemble$NAME
cp $DEPLOY_DIR/$DEPLOY_FOLDER/$VERSION"-"$APK_NAME $DEPLOY_DIR/$DEPLOY_FOLDER/$APK_NAME
這導致2周的APK產生,63-WhiteLabel1.APK
和63-WhiteLabel2.APK
,然後將其複製到各自部署的目錄爲WhiteLabel1.APK
和WhiteLabel2.APK
我想,如果你是聰明的你可以使這個參數運行你想要的,但Android Studio在這方面做得相當不錯。
這是一個Gradle腳本或其他類型的腳本嗎? –
使用我可以編寫一個Ant腳本來觸發Gradle腳本,其中包含上面列出的所有功能,並帶有失敗邏輯? –
我最終使用了一個Ant腳本,除了構建Gradle之外還做了幾件事情。 –