#!/bin/bash # Android-Werkzeuge ohne Root nach ~/Android: JDK 17, SDK, Emulator, Gradle. # Danach: android/dev/env.sh einbinden (source), dann gradle und adb im PATH. set -e ROOT=${ANDROID_ROOT:-$HOME/Android} mkdir -p "$ROOT" && cd "$ROOT" if [ ! -x jdk17/bin/java ]; then echo "== JDK 17" curl -sL -o jdk.tar.gz "https://api.adoptium.net/v3/binary/latest/17/ga/linux/x64/jdk/hotspot/normal/eclipse?project=jdk" tar xzf jdk.tar.gz && rm jdk.tar.gz mv jdk-17* jdk17 fi export JAVA_HOME="$ROOT/jdk17" export ANDROID_HOME="$ROOT/Sdk" export PATH="$JAVA_HOME/bin:$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/platform-tools:$ANDROID_HOME/emulator:$ROOT/gradle/bin:$PATH" if [ ! -x "$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager" ]; then echo "== Android Kommandozeilen-Tools" curl -sL -o cmdline-tools.zip https://dl.google.com/android/repository/commandlinetools-linux-11076708_latest.zip mkdir -p "$ANDROID_HOME/cmdline-tools" unzip -q cmdline-tools.zip -d "$ANDROID_HOME/cmdline-tools" && rm cmdline-tools.zip mv "$ANDROID_HOME/cmdline-tools/cmdline-tools" "$ANDROID_HOME/cmdline-tools/latest" fi echo "== SDK-Pakete" yes | sdkmanager --licenses >/dev/null 2>&1 || true sdkmanager --install "platform-tools" "platforms;android-34" "build-tools;34.0.0" "emulator" \ "system-images;android-34;google_apis;x86_64" > /dev/null if ! avdmanager list avd 2>/dev/null | grep -q "Name: test"; then echo "== Emulator-Gerät" echo no | avdmanager create avd -n test -k "system-images;android-34;google_apis;x86_64" -d pixel_6 > /dev/null fi if [ ! -x gradle/bin/gradle ]; then echo "== Gradle" curl -sL -o gradle.zip https://services.gradle.org/distributions/gradle-8.9-bin.zip unzip -q gradle.zip && rm gradle.zip mv gradle-8.9 gradle fi echo "fertig: $(java -version 2>&1 | head -1); gradle $(gradle --version 2>/dev/null | grep -m1 Gradle | awk '{print $2}')"