Створіть додаток Android Studio за допомогою командного рядка


136

Я хочу створити додаток Android Studio (система збірки Gradle), але хочу це зробити за допомогою командного рядка.


6
Наприклад ./gradlew assembleRelease, ./gradlew assembleDebug
Gabriele Mariotti

Якщо у вас є кілька варіантів складання, тоді слід перейти ./gradlew assembleYourVariantRelease
Michał Dobi

Відповіді:


190

Android Studio автоматично створює обгортку Gradle в корені вашого проекту, саме так воно викликає Gradle. Обгортка - це в основному сценарій, який зателефонує до фактичного двійкового файлу Gradle і дозволяє постійно оновлювати Gradle, що полегшує використання контролю версій. Щоб запустити команду Gradle, ви можете просто використовувати gradlewскрипт, знайдений у корені проекту (або gradlew.batв Windows), а потім ім'я завдання, яке потрібно виконати. Наприклад, щоб створити налагоджувальну версію програми для Android, можна запустити ./gradlew assembleDebugз кореня вашого сховища. У налаштуваннях проекту за замовчуванням отриманий apk потім можна знайти в app/build/outputs/apk/app-debug.apk. На * nix-машині ви також можете просто запустити find . -name '*.apk'його, якщо його немає.


36
Мені знадобилося більше 2 годин, щоб зрозуміти, який правильний спосіб запустити Gradle з командного рядка
Одед Регев,

4
Я запустив це з командного рядка c:\path_to_my_app\gradlew.bat ./gradlew assemblyDebug, і він показав мені Завантаження сервісів.gradle.org/ distributions/ gradle-2.10-all.zip . І там застрягло. Що я сумую?
Saeed Neamati

Ви також можете встановити додаток за допомогою ./gradlew installArm7Debug. Інші завдання легко знайти з./gradlew tasks
Андреас Леве Селвік

1
Я склав проект і завантажив його на пристрій Android за допомогою ./gradlew assembleDebugта ./gradlew installDebugкоманд. У AndroidStudio є консоль, яка відстежує всі дії пристроїв Android у режимі реального часу (наприклад, якщо пристрій Android виходить з ладу, консоль друкує слід виключення). Як отримати цей моніторинговий центр на терміналі?
mercury0114

Як запобігти завантаженню градації -> Завантаження послуг.gradle.org/distributions/gradle-2.xyz-all.zip. Я помітив, що gradle чудово будує проект Android, але в командному рядку виникає проблема налаштування проксі. Це можна вирішити, поставивши проксі-сервіси (але зараз я не маю цього привілею), але я просто хочу обійти річ, що завантажується .. Як я можу це зробити?
Раульп

24

Спробуйте це (лише для OS X):

brew install homebrew/versions/gradle110
gradle build

Ви можете використовувати gradle tasksдля перегляду всіх завдань, доступних для поточного проекту. Тут нічого Android Studioне потрібно.


4
Переконайтеся, що у вас встановлений домашній мов для початку!
amitavk

1
"не потрібна Android Studio" - якщо я вам не потрібен SDK для Android. У будь-якому випадку проект, який я намагаюся створити, вимагає цього.
hmijail сумує у відставці

21

Є два типи складання для складання програми за допомогою налаштувань збірки Gradle: один для налагодження програми - налагодження - і один для створення остаточного пакету для режиму реліз - випуск.

Побудова в режимі налагодження

  • Спочатку перейдіть до кореневої папки проекту Android студії за допомогою CMD введіть тут опис зображення

  • запустіть цю команду gradlew.bat assembleDebug

  • Вихідне вікно виглядає приблизно так введіть тут опис зображення

Побудувати підписаний apk в режимі випуску

  • Відредагуйте файл build.gradle, щоб створити проект у режимі випуску:

    android {
    ...
    defaultConfig { ... }
    signingConfigs {
        release {
            storeFile file("myreleasekey.keystore")
            storePassword "password"
            keyAlias "MyReleaseKey"
            keyPassword "password"
        }
    }
    buildTypes {
        release {
            ...
            signingConfig signingConfigs.release
        }
    }}
    

введіть тут опис зображення

  • запустіть цю команду gradlew.bat assembleRelease

Готово.


2
Чи є спосіб автоматичного запуску програми після успішної збірки?
Ambar Jain

Я не можу знайти спосіб автоматичного запуску програми після збирання
Дхаваль Джівані

3
@DhavalJivani запустити його в емуляторі, який ви маєте на увазі? Якщо так, то це просто прості команди adb. Ви навіть можете націлити певну діяльність на запуск. developer.android.com/studio/command-line/adb.html
бліз

@DhavalJivani, який найкращий спосіб тестувати додаток для Android в тестуванні автоматизації ?. Щодо Інтернету, у нас є селен у python та node.
Суворий Манвар

9

Це спроба повного керівництва

1. Встановіть Gradle та Android SDK

Або

  • Встановіть їх, проте вважаєте за потрібне
  • Запустити ./gradlewабо gradlew.batякщо в Windows
    • chmod +x ./gradlew може знадобитися

З цього моменту gradleпосилається на виконання Gradle будь-яким способом, який ви вибрали. Замініть відповідно.

2. Налаштуйте Android SDK

  • Якщо ви встановили SDK вручну

    • export ANDROID_HOME=<install location>
    • Ви можете поставити це у свій, ~/.profileякщо це не робиться автоматично
  • Прийняти ліцензії: yes | sdkmanager

    • sdkmanager можна знайти в $ANDROID_HOME/tools/bin
    • sdkmanager можливо, доведеться запускати як root
  • Спробуйте запустити gradle

    • Якщо є скарги на те, що ліцензії або SDK не знайдено, виправте права доступу до каталогу
      • chown -R user:group $ANDROID_HOME
      • Якщо ви необачні та / або єдиний користувач: chmod 777 -R $ANDROID_HOME

3. Будівництво

  • gradle tasks перераховані всі завдання, які можна виконати
  • :app:[appname] - це префікс усіх завдань, який ви побачите в журналах Gradle, коли будуєте
    • Це можна виключити під час виконання завдання

Деякі важливі завдання

  • gradle assemble: створити всі варіанти програми
    • Результати .apks є в app/[appname]/build/outputs/apk/[debug/release]
  • gradle assembleDebugабо assembleRelease: створити лише версії для налагодження чи випуску
  • gradle installDebugабо installReleaseстворити та встановити на приєднаному пристрої
    • У ADB встановлений
    • Підключіть пристрій із ввімкненою налагодженням USB та переносом USB-файлів
    • Запустіть adb devices, переконайтеся, що ваш пристрій вказано в списку та пристрій біля нього

Автоматично створювати та встановлювати при змінах

Це дозволяє уникнути постійного виконання одних і тих же команд

gradle -t --continue installDebug
  • -t: ака --continuous, автоматично повторно виконує завдання після зміни файлу
  • --continue: Продовжуйте після помилок. Запобігає зупинці при виникненні помилок

Біжіть gradle -hза додатковою допомогою


8

Ви, ймовірно, тут, тому що хочете встановити і його!

Побудувати

gradlew

(У Windows gradlew.bat)

Потім встановіть

adb install -r exampleApp.apk

( -rПримушує його замінювати наявну копію, додавати, -sякщо встановлюється на емуляторі)

Бонус

Я встановив псевдонім у своєму ~/.bash_profile, щоб зробити його командою 2char.

alias bi="gradlew && adb install -r exampleApp.apk"

(Короткий варіант для створення та встановлення)


7

Шпаргалка для запуску Gradle з командного рядка для проектів Android Studio в Linux:

cd <project-root>
./gradlew
./gradlew tasks
./gradlew --help

Слід почати ..


3

Для Mac використовуйте цю команду

  ./gradlew task-name

1

Тільки для користувачів MAC

Подовження відповіді Vji .

Покрокова процедура:

  1. Відкритий термінал
  2. Змініть каталог на свій проект (cd PathOfYourProject)
  3. Скопіюйте та вставте цю команду та натисніть Enter:

    chmod +x gradlew
    
  4. Як Vji запропонував:

    ./gradlew task-name
    

    НЕ ЗАБУЧАЙТЕ ДОДАТИ. (DOT) ДО / gradlew


1

Офіційна документація тут:

Щоб створити APK для налагодження, відкрийте командний рядок та перейдіть до кореня каталогу проекту. Щоб ініціювати побудову налагодження, викликайте assembleDebugзавдання:

gradlew assembleDebug

Це створить APK, названий module_name-debug.apkв project_name/module_name/build/outputs/apk/.


0

enter code hereСтворіть файл сценарію із командою нижче gradle та adb, Виконати файл сценарію

./gradlew clean

./gradlew assembleDebug ./gradlew installDebug

adb shell am start -n applicationID / повний шлях активності запуску


0

Зауважте, ви також можете це зробити в Android Studio, натиснувши вікно gradle, а потім кнопку "слон". Це відкриє нове вікно під назвою "запустити що завгодно" (його також можна знайти, шукаючи це ім'я у "пошуку скрізь"), де ви можете вручну ввести будь-яку команду gradle, яку ви хочете. Не "зовсім" командний рядок, але часто надає більше що мені потрібно, ніж командний рядок Windows.

Це дає змогу надати необов'язкові параметри завданням градуса тощо.


-2

Додаючи цінність усім цим відповідям,

багато хто попросив команду для запуску програми в AVD після успішної збірки.

adb install -r {path-to-your-bild-folder}/{yourAppName}.apk
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.