Как получить уведомление, когда Android Studio закончит сборку? - PullRequest
0 голосов
/ 10 ноября 2018

Я хотел бы получить уведомление, когда Gadle закончит сборку моего приложения,

Обратите внимание, что я не очень знаком с Gradle, за исключением обычных утверждений, используемых в Android Studio, но я рад, что смог кое-что выучить.

Лучший способ, который я видел до сих пор, - использовать плагины announce и build-announcements, как указано в по этой ссылке . К сожалению, он предназначен для Gradle в целом, и я не могу понять, как адаптировать его к системе сборки Android Studio. Кстати, я на Windows и у меня установлен Snarl, но не знаю, как заставить его работать с Android Studio.

Как и в учебнике, я применил оба плагина к своему app / build.gradle.

Сначала я попытался адаптировать код из этого ТАКОГО вопроса . Поскольку никакой реальной информации об этом не было, я написал эти строки в корне файла gradle.

assembleRelease.doLast {
    announce.local.send "Gradle Info Task", 'Running'
    println gradle.gradleVersion
    announce.announce("helloWorld completed!", "local")
}

Однако Gradle даже не синхронизируется, выдав эту ошибку:

Не удалось получить неизвестное свойство 'assemblyRelease' для проекта ': myApplication' типа org.gradle.api.Project.

Затем я попытался создать задачу, как показано в на этом другом SO вопросе :

task notification() {
        announce.local.send "Gradle Info Task", 'Running'
        println gradle.gradleVersion
        announce.announce("helloWorld completed!", "local")
}
build.finalizedBy(notification) //

Не выдает никакой ошибки, но уведомление не отображается.

Почему мои попытки провалились? Как мне достичь своей цели?

Если возможно, информация о том, как я должен был искать эту информацию, очень приветствуется.

Ответы [ 2 ]

0 голосов
/ 05 декабря 2018

Самый простой способ добиться того, что вам нужно:

В Android Studio перейдите в Preferences > Appearance & Behavior > Notifications, перейдите в Gradle Build (Logging) и установите флажок Читать вслух.

Это говорит о том, что Gradle build завершен через x минут и x секунд после завершения сборки.

0 голосов
/ 10 ноября 2018

вам нужно добавить плагины анонс и сборка анонсов . поддерживаются следующие пункты назначения: Twitter , уведомление-отправка (Ubuntu), Snarl (Windows), Growl (macOS). это плагины, необходимые:

rootProject {
    apply plugin: "announce"
    apply plugin: 'build-announcements'
}

и для завершения процесса сборки (см. поддерживаемые службы уведомлений ):

// it finalizes :assemble
task finalizeBuild {
    doLast {
        println(":finalizeBuild > doLast")
        announce.announce("task :assemble completed!", "snarl")
    }
}

tasks.whenTaskAdded { task ->
    if (task.name == "assembleDebug") {
        task.finalizedBy finalizeBuild
    } else if (task.name == "assembleRelease") {
        task.finalizedBy finalizeBuild
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...