Android Gradle – как запустить задачу после установки приложенияAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Android Gradle – как запустить задачу после установки приложения

Сообщение Anonymous »

Мне нужно скопировать некоторые файлы в папку приложения Android (data/data/...) после установки приложения через Gradle. Это необходимо делать при каждой сборке отладки перед запуском приложения, поэтому я предположил, что смогу найти задачу gradle, которую можно будет выполнить после установки (но до запуска команда).

Он отлично работает для других задач, например

Код: Выделить всё

tasks.whenTaskAdded { task ->
if (task.name == 'build') {
task.dependsOn taskXYZ
}
}
Затем они выполняются до выполнения моей задачи сборки.
Однако, поскольку мне нужно, чтобы это произошло после процесса установки (и до запуска приложения ) Я надеялся на что-то вроде этого:

Код: Выделить всё

tasks.whenTaskAdded { task ->
if (task.name.startsWith('install')){
println ">>>>>>>>> " + task.name
task.finalizedBy taskXYZ
}
Но, к сожалению, это не работает.

В выводе сборки я вижу, что это выполнено в значительной степени в начале.

Код: Выделить всё

Executing tasks: [:app:assemblePlayStoreStagingDebug] in project /Users/...

> Configure project :app
###########################
TASK XYZ WAS EXECUTED HERE!
###########################
---> installPlayStoreStagingDebug

> Task :app:preBuild UP-TO-DATE
> Task :app:prePlayStoreStagingDebugBuild
> Task :app:compilePlayStoreStagingDebugAidl UP-TO-DATE
...
> Task :app:stripPlayStoreStagingDebugDebugSymbols UP-TO-DATE
> Task :app:packagePlayStoreStagingDebug
> Task :app:assemblePlayStoreStagingDebug

BUILD SUCCESSFUL in 6s
33 actionable tasks: 6 executed, 27 up-to-date
Похоже, задача не была выполнена в ожидаемое время. Мне нужно что-то вроде этого:
  • Создание задачи
  • Установка задачи
  • Задача XYZ
  • Приложение для запуска задач
Но как мне этого добиться?

Решения, подобные этому,
работают на Android Задача Gradle после установки приложения
Похоже, не работает для задачи установки.

----- РЕДАКТИРОВАТЬ -----

Я попробовал наоборот и вместо использования задач gradle попытался изменить конфигурацию запуска AS, добавив вызов «внешнего инструмента» в настройках «перед запуском». .

https://developer.android.com/studio/ru ... ningbefore

Однако при выборе там, например, сценария оболочки он выиграл не выполняется (например, я создавал файл или каталог в этом сценарии, чтобы видеть, был ли он выполнен вообще). Кажется, это не проблема с разрешением error=13. Так что, если задачи gradle не являются решением, возможно, кто-нибудь знает решение с этой опцией!

Подробнее здесь: https://stackoverflow.com/questions/591 ... stallation
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»