Die Installation des Android-SDK (2015)
Das folgende Kommandoskript sollte die verschiedenen Zip-Archive des Android SDK abrufen, nach »%TEMP%« entpacken und schließlich in das Verzeichnis »%LOCALAPPDATA%\android-sdk_r24.0.2-windows\android-sdk-windows« kopieren. Dies könnte insgesamt ungefähr eine Stunde dauern. Da der Quellcode dieses Skripts und der Quellcode des verwendeten Java -Programms auf dieser Seite zugänglich sind, sollte es Lesern mit Kenntnissen in Java und Windows möglich sein, eventuell auftretende Programm zu analysieren und eventuell zu beheben.
Falls die folgenden Zip-Archive des Android SDK aus einer anderen Quelle verfügbar sein sollten, so können sie auch vor dem Start des Skripts nach »%TEMP%« kopiert werden, um den Ablauf zu beschleunigen. Eine Liste jener Dateien findet sich weiter unten.
Das in einer früheren Lektion erstellte Skript »env.cmd« wird hier vorausgesetzt.
Der Zeilenpuffer der Konsole sollte für die Ausführung dieses Skripts erhöht werden, um alle Meldungen gut lesen zu können (beispielsweise: Breite: 500, Höhe: 2000).
Bei Problemen mit der aktuellen Version des folgenden Skripts kann auch eine ältere Version dieser Seite von 2014 verwendet werden: https://www.purl.org/stefan_ram/pub/sdk-installation_android
10_install.cmd
@ECHO %~f0
@SET DIRECTORY_OF_SCRIPT=%~dp0
@CD /D "%DIRECTORY_OF_SCRIPT%"
@CALL "env.cmd"
@TITLE Installation des Android-SDK
@REM Setlocal EnableDelayedExpansion
@setlocal enableextensions enabledelayedexpansion
ECHO ON
SET CLASSNAME=Please
%JAVAC% %CLASSNAME%.java
SET PLEASE=%JAVA% %CLASSNAME%
SET DOWNLOAD=%PLEASE% download
SET EXTRACT=%PLEASE% extract
SET ANDROID=http://dl.google.com/android
SET REPOSITORY=%ANDROID%/repository
SET COPY=XCOPY /S/E/I/H/R/G/K/Y/Q
GOTO MAIN :DOWNLOAD
IF NOT EXIST %TEMP%\%2.zip (
%DOWNLOAD% %1 %TEMP%\%2.zip %3
)
%EXTRACT% %TEMP%\%2.zip %TEMP%\%2
EXIT /B :MAIN SET "N=android-sdk_r24.0.2-windows" & CALL :DOWNLOAD "%ANDROID%/!N!.zip" !N! 4000
SET "D=android-sdk-windows" & %COPY% "%TEMP%\!N!\!D!" "%ANDROID_SDK%" SET "N=platform-tools_r19.0.2-windows" & CALL :DOWNLOAD "%REPOSITORY%/!N!.zip" !N! 200
SET "D=platform-tools" & %COPY% "%TEMP%\!N!\!D!" "%ANDROID_SDK%\!D!" SET "N=build-tools_r19.0.3-windows" & CALL :DOWNLOAD "%REPOSITORY%/!N!.zip" !N! 600
SET "D=build-tools" & %COPY% "%TEMP%\!N!\android-4.4.2" "%ANDROID_SDK%\!D!" SET "N=android-21_r02" & CALL :DOWNLOAD "%REPOSITORY%/!N!.zip" !N! 2000
SET "D=android-21" & %COPY% "%TEMP%\!N!\android-5.0.1" "%ANDROID_SDK%\platforms\!D!" SET "N=sysimg_arm-22_r01" & CALL :DOWNLOAD "%REPOSITORY%/sys-img/android/!N!.zip" !N! 5500
SET "D=armeabi-v7a" & %COPY% "%TEMP%\%N%\!D!" "%ANDROID_SDK%\system-images\android-22\!D!" GOTO OVER SET "N=samples-20_r03" & CALL :DOWNLOAD "%REPOSITORY%/sys-img/android/!N!.zip" !N! 1700
SET "D=samples" & %COPY% "%TEMP%\!N!\android-4.4w" "%ANDROID_SDK%\platforms\android-20\!D!" SET "N=sources-21_r01" & CALL :DOWNLOAD "%REPOSITORY%/sys-img/android/!N!" !N! 1000 SET "N=docs-21_r01" & CALL :DOWNLOAD "%REPOSITORY%/sys-img/android/!N!" !N! 7900 :OVER mkdir "%USERPROFILE%\.android" "%JDK%\bin\keytool" ^
-genkeypair ^
-validity 2800000 ^
-dname "CN=Android Debug,O=Android,C=US" ^
-keystore "%USERPROFILE%\.android\debug.keystore" ^
-storepass android ^
-alias androiddebugkey ^
-keypass android ^
-keyalg RSA ^
-v mkdir %USERPROFILE%\.android\avd
mkdir %USERPROFILE%\.android\avd\AVD0.avd
echo avd.ini.encoding=ISO-8859-1>%USERPROFILE%\.android\avd\AVD0.ini
echo target=android-22>>%USERPROFILE%\.android\avd\AVD0.ini
echo path=C:\Users\s\.android\avd\AVD0.avd>>%USERPROFILE%\.android\avd\AVD0.ini
echo path.rel=avd\AVD0.avd>>%USERPROFILE%\.android\avd\AVD0.ini :END
PAUSE
GOTO END- Liste der benötigten Dateien in %TEMP%
android-sdk_r24.0.2-windows.zip
build-tools_r19.0.3-windows.zip
platform-tools_r19.0.2-windows.zip
android-21_r02.zip
sysimg_arm-22_r01.zip
Während einer eventuellen Wartezeit kann nun schon das Kapitel Allgemeines zur Android -Entwicklung gelesen werden.
Nach der erfolgreichen Installation der Software mit diesem Skript wird dieses Skript »10_install.cmd« im Rest dieses Kurses nicht mehr benötigt.
* Wiederholung des Prozesses nach Problemen
Das Skript wurde so geschrieben, daß es bei einer eventuellen doppelten Ausführung schon einmal erhaltene Zip-Archive nicht noch einmal abruft.
Falls der Installationsvorgang nach Problemen von vorne begonnen werden soll, sind im %TEMP%-Verzeichnis aber diejenigen vom Skript angelegten Zip-Archive zu löschen, welche unvollständig oder beschädigt sein könnten. Im Zweifelsfalle sind ist dies das letzte Zip-Archive und das Verzeichnis, in welches es entpackt wurde. Notfalls sind alle vom Skript angelegten Dateien und Verzeichnisse zu löschen.
* Rückgängigmachen des Vorgangs
Vorsicht, das folgende Skript »remoandr.cmd« löscht viele Dateien und Verzeichnisse! Es sollte normalerweise nicht verwendet werden.
remoandr.cmd
@ECHO %~f0
@CALL "env.cmd"
@GOTO MAIN :DELE
PUSHD %TEMP%
DEL /F/S/Q "%1"
RMDIR /S/Q "%1"
IF EXIST %1 GOTO :DELE
POPD
@EXIT /B :MAIN
taskkill /im ADB.EXE /f
taskkill /im ADB.EXE /f
taskkill /im ADB.EXE /f
taskkill /im ADB.EXE /f
taskkill /im ADB.EXE /f
taskkill /im ADB.EXE /f
taskkill /im ADB.EXE /f
taskkill /im ADB.EXE /f
taskkill /im ADB.EXE /f
@CALL :DELE %USERPROFILE%\.android
@CALL :DELE %LOCALAPPDATA%\android-sdk_r22.3-windows
@CALL :DELE %LOCALAPPDATA%\android-sdk_r24.0.2-windows
@CALL :DELE %TEMP%\android-18_r02
@CALL :DELE %TEMP%\android-21_r02
@CALL :DELE %TEMP%\build-tools_r18.0.1-windows
@CALL :DELE %TEMP%\build-tools_r19.0.3-windows
@CALL :DELE %TEMP%\docs-21_r01
@CALL :DELE %TEMP%\samples-18_r01
@CALL :DELE %TEMP%\samples-20_r03
@CALL :DELE %TEMP%\temp-android-tool
@CALL :DELE %TEMP%\sysimg_armv7a-18_r02
@CALL :DELE %TEMP%\sysimg_armv7a-19_r02
@CALL :DELE %TEMP%\platform-tools_r18.0.1-windows
@CALL :DELE %TEMP%\platform-tools_r19.0.1-windows
@CALL :DELE %TEMP%\platform-tools_r19.0.2-windows
@CALL :DELE %TEMP%\AndroidEmulator @PAUSE @EXIT @CALL :DELE %TEMP%\docs-21_r01.zip
@CALL :DELE %TEMP%\samples-20_r03.zip
@CALL :DELE %TEMP%\sysimg_armv7a-19_r02.zip
@CALL :DELE %TEMP%\android-21_r02.zip
@CALL :DELE %TEMP%\build-tools_r19.0.3-windows.zip
@CALL :DELE %TEMP%\platform-tools_r19.0.2-windows.zip
@CALL :DELE %TEMP%\android-sdk_r24.0.2-windows.zip @CALL :DELE %TEMP%\build-tools_r18.0.1-windows.zip
@CALL :DELE %TEMP%\samples-18_r01.zip
@CALL :DELE %TEMP%\sysimg_armv7a-18_r02.zip
@CALL :DELE %TEMP%\android-18_r02.zip
@CALL :DELE %TEMP%\android-sdk_r22.3-windows.zip
@CALL :DELE %TEMP%\platform-tools_r18.0.1-windows.zip @PAUSE
»Unzulässiger SHARE-Vorgang« *
Wenn diese Fehlermeldung von »XCOPY« kommt, so bedeutet dies, daß versucht wird, gesperrte Dateien zu kopieren.
Die Option »/Q« kann verwendet werden, um zu sehen, bei welcher Datei genau die Fehlermeldung erscheint.
Gegebenenfalls erst einmal den Zielordner löschen?
Mit »/c« wird bei Fehlern weiterkopiert.
Mit »/EXCLUDE« können Dateien vom Kopieren ausgeschlossen werden.
Durch einen erneuten Kopierversuch, dem »/C/D/L« hinzugefügt wird, kann erkannt werden, welche Dateien nicht kopiert wurden.