Выполнить скрипт Python после успешного «Перестроить проект» в Android Studio - PullRequest
0 голосов
/ 30 апреля 2019

Мне нужно скопировать недавно сгенерированный apk на удаленную машину, поэтому в настоящее время у меня на рабочем столе есть значок, который запускает скрипт Python.

Я хочу, чтобы этот сценарий автоматически вызывался Android Studio после успешного восстановления проекта.

Как я могу это сделать?

Я нашел фрагмент кода, а именно:

task generateSources << {
    def script = "python downloadAPK.py".execute()
}

gradle.projectsEvaluated {
    compileJava.dependsOn(generateSources)
}

но Android Studio жалуется на "Не удалось найти метод leftShift () ...", когда я вставляю его в конец build.gradle

приложения

1 Ответ

0 голосов
/ 30 апреля 2019

В файле build.gradle модуля app добавьте следующее:

android {
    ...        
    defaultConfig {
      ...
    }    
    buildTypes {
      ...
    }    
    afterEvaluate {
        task upload_apk() {
            doLast {
                def do_upload = true
                if (project.hasProperty('android.optional.compilation')) {
                    if (project.property('android.optional.compilation').toString().contains("INSTANT_DEV")) {
                        do_upload = false
                    }
                }
                if (do_upload) {
                  println('\nUploading APK...')
                  exec {
                      workingDir "C:\\Users\Username\Desktop\\tools"
                      executable "python"
                      args "C:\\Users\Username\Desktop\\tools\\upload_apk.py"
                  }
                }
                else {
                    println 'Will not upload the APK since Instant Run has not modified it'
                }
            }
        }
        assembleDebug.finalizedBy(upload_apk)
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...