it-swarm.com.de

Erstellen Sie eine Android Studio-App über die Befehlszeile

Ich möchte eine Android Studio-App (das Gradle-Build-System) erstellen, dies aber über die Befehlszeile.

103
B. Nadolson

Android Studio erstellt automatisch einen Gradle-Wrapper im Stamm Ihres Projekts, wodurch Gradle aufgerufen wird. Der Wrapper ist im Wesentlichen ein Skript, das die eigentliche Gradle-Binärdatei aufruft und Gradle auf dem neuesten Stand hält, wodurch die Versionskontrolle vereinfacht wird. Um einen Gradle-Befehl auszuführen, können Sie einfach das Skript gradlew verwenden, das sich im Stammverzeichnis Ihres Projekts (oder gradlew.bat unter Windows) befindet, gefolgt vom Namen der Aufgabe, die Sie ausführen möchten. Um beispielsweise eine Debug-Version Ihrer Android-Anwendung zu erstellen, können Sie ./gradlew assembleDebug im Stammverzeichnis Ihres Repositorys ausführen. In einem Standardprojekt-Setup befindet sich die resultierende apk dann in app/build/outputs/apk/app-debug.apk. Auf einem * nix-Rechner können Sie auch find . -name '*.apk' ausführen, um ihn zu finden, falls er nicht vorhanden ist.

163
FuegoFro

Versuchen Sie dies (nur OS X):

brew install homebrew/versions/gradle110
gradle build

Mit gradle tasks können Sie alle für das aktuelle Projekt verfügbaren Aufgaben anzeigen. Hier wird kein Android Studio benötigt.

20
superarts.org

es gibt zwei Build-Typen zum Erstellen Ihrer Anwendung unter Verwendung der Gradle-Build-Einstellungen: einen zum Debuggen Ihrer Anwendung - debug - und einen zum Erstellen des endgültigen Pakets für den Release-Release-Modus.

Gebäude im Debug-Modus

  • Navigieren Sie zunächst mit CMD zum Android Studio-Projektstammverzeichnis  enter image description here

  • führen Sie diesen Befehl aus gradlew.bat assembleDebug

  • Ausgabefenster sehen so aus  enter image description here

Erstelle signierte apk im Release-Modus

  • Bearbeiten Sie die Datei build.gradle, um Ihr Projekt im Freigabemodus zu erstellen:

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

 enter image description here

  • führen Sie diesen Befehl aus gradlew.bat assembleRelease

Gutes Glück!

17
Dhaval Jivani

Sie sind wahrscheinlich hier, weil Sie es auch installieren möchten!

Bauen

gradlew

(Unter Windows gradlew.bat)

Dann installieren Sie

adb install -r exampleApp.apk

(Der -r ersetzt die vorhandene Kopie, fügt bei der Installation auf einem Emulator einen -s hinzu.)

Bonus

Ich habe einen Alias ​​in meinem ~/.bash_profile eingerichtet, um ihn zu einem 2char-Befehl zu machen.

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

(Abkürzung für Build and Install)

6
Gibolt

Cheatsheet zum Ausführen von Gradle von der Befehlszeile für Android Studio-Projekte unter Linux:

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

Solltest du anfangen ..

3
bph

Dies ist ein Versuch einer vollständigen Anleitung

1. Installieren Sie Gradle und das Android SDK

Entweder

  • Installieren Sie diese, wie Sie es für richtig halten
  • Führen Sie ./gradlew oder gradlew.bat aus, wenn unter Windows
    • chmod +x ./gradlew kann erforderlich sein

Von diesem Punkt an bezieht sich gradle auf das Ausführen von Gradle, wie auch immer Sie gewählt haben.

2. Richten Sie das Android SDK ein

  • Wenn Sie das SDK manuell installiert haben

    • export Android_HOME=<install location>
    • Sie können dies in Ihren ~/.profile einfügen, wenn dies nicht automatisch geschieht
  • Akzeptieren Sie die Lizenzen: yes | sdkmanager

    • sdkmanager befindet sich in $Android_HOME/tools/bin
    • sdkmanager muss möglicherweise als root ausgeführt werden
  • Versuchen Sie, gradle auszuführen.

    • Wenn es Beschwerden darüber gibt, dass Lizenzen oder SDKs nicht gefunden werden, korrigieren Sie die __.directory-Berechtigungen.
      • chown -R user:group $Android_HOME
      • Wenn Sie waghalsig und/oder der einzige Benutzer sind: chmod 777 -R $Android_HOME

3. Gebäude

  • gradle tasks listet alle Aufgaben auf, die ausgeführt werden können
  • :app:[appname] ist das Präfix aller Aufgaben, das Sie beim Erstellen von .__ in den Gradle
    • Dies kann beim Ausführen einer Aufgabe ausgeschlossen werden

Einige wesentliche Aufgaben

  • gradle assemble: Erstellen Sie alle Varianten Ihrer App
    • Resultierende .apks sind in app/[appname]/build/outputs/apk/[debug/release]
  • gradle assembleDebug oder assembleRelease: Nur die Debug- oder Release-Versionen erstellen
  • gradle installDebug oder installRelease erstellen und auf einem angeschlossenen Gerät installieren
    • Habe adb installiert
    • Schließen Sie ein Gerät mit aktiviertem USB-Debugging und USB-Dateiübertragung an
    • Führen Sie adb devices aus, überprüfen Sie, ob Ihr Gerät aufgeführt ist und Gerät Daneben steht

Bei Änderungen automatisch erstellen und installieren

Dies vermeidet, dass die gleichen Befehle ständig ausgeführt werden müssen

gradle -t --continue installDebug
  • -t: aka --continuous führt die Task automatisch erneut aus, nachdem eine Datei geändert wurde
  • --continue: Nach Fehlern fortfahren. Verhindert das Anhalten bei Fehlern

Führen Sie gradle -h für weitere Hilfe aus

2
williamvds

Für Mac verwenden Sie diesen Befehl

  ./gradlew task-name
2
Vji

enter code hereCreate script file with below gradle and adb command, Execute script file

./gradlew clean

./gradlew assembleDebug ./gradlew installDebug

adb Shell am start -n applicationID/vollständiger Pfad der Launcher-Aktivität

0
user2851150

Offizielle Dokumentation ist hier:

Um ein Debug-APK zu erstellen, öffnen Sie eine Befehlszeile und navigieren Sie zum Stammverzeichnis Ihres Projektverzeichnisses. Rufen Sie zum Starten eines Debugbuilds die Task assembleDebug auf:

gradlew assembleDebug

Dadurch wird ein APK mit dem Namen module_name-debug.apk in project_name/module_name/build/outputs/apk/ erstellt.

0
Muhammad Usman

Nur für MAC-Benutzer

Antwort von Vji erweitern.

Schritt für Schritt 

  1. Terminal öffnen 
  2. Ändern Sie Ihr Verzeichnis in Ihr Projekt (cd PathOfYourProject)
  3. Kopieren Sie diesen Befehl und drücken Sie die Eingabetaste:

    chmod +x gradlew
    
  4. Wie Vji vorgeschlagen:

    ./gradlew task-name
    

    VERGESSEN SIE NICHT, HINZUZUFÜGEN (DOT), bevor Sie/gradlew

0
Naveen Kumawat