Exportieren für Android

Siehe auch

Diese Seite beschreibt, wie man ein Godot-Projekt nach Android exportiert. Wenn Sie stattdessen Exportvorlagen-Binärdateien aus dem Quellcode kompilieren möchten, lesen Sie Kompilieren für Android.

Das Exportieren für Android stellt weniger Anforderungen als das Kompilieren von Godot. In den folgenden Schritten wird detailliert beschrieben, was zum Einrichten des SDK und der Engine erforderlich ist.

Achtung

In C# geschriebene Projekte können ab Godot 4.2 nach Android exportiert werden, aber die Unterstützung ist experimentell und Es gelten einige Einschränkungen.

OpenJDK 17 installieren

Laden Sie OpenJDK 17 herunter und installieren Sie es.

Android-SDK herunterladen

Laden Sie das Android SDK herunter und installieren Sie es.

  • You can install the Android SDK using Android Studio Iguana (version 2023.2.1) or later.

    • Führen Sie es einmal aus, um das SDK-Setup mithilfe dieser Anweisungen <https://developer.android.com/studio/intro/update#sdk-manager> __ abzuschließen.

    • Stellen Sie sicher, dass auch die erforderlichen Pakete installiert sind.

      • Android SDK Platform-Tools Version 34.0.0 oder höher

      • Android SDK Build-Tools Version 34.0.0

      • Android SDK-Plattform 34

      • Android SDK-Kommandozeilentools (aktuell)

    • Ensure that the NDK and CMake are installed and configured.

      • CMake-Version 3.10.2.4988404

      • NDK-Version r23c (23.2.8568313)

  • Alternativ können Sie das Android-SDK auch mit dem Kommandozeilen-Tool sdkmanager installieren.

    • Installieren Sie das Paket der Befehlszeilentools mit Hilfe dieser Anleitung.

    • Sobald die Befehlszeilentools installiert sind, führen Sie den folgenden Befehl sdkmanager aus, um den Einrichtungsprozess abzuschließen:

sdkmanager --sdk_root=<android_sdk_path> "platform-tools" "build-tools;34.0.0" "platforms;android-34" "cmdline-tools;latest" "cmake;3.10.2.4988404" "ndk;23.2.8568313"

Bemerkung

Wenn Sie Linux verwenden, verwenden Sie kein Android-SDK, das in den Repositorys Ihrer Distribution bereitgestellt wird, da es oft veraltet ist.

Einrichtung in Godot

Enter the Editor Settings screen (under the Godot tab for macOS, or the Editor tab for other platforms). This screen contains the editor settings for the user account in the computer (it's independent of the project).

../../_images/editorsettings.png

Scrollen Sie nach unten zu dem Abschnitt, in dem sich die Android-Einstellungen befinden:

../../_images/android_editor_settings.webp

In diesem Bildschirm müssen 2 Pfade festgelegt werden:

  • Der Java SDK Path sollte der Ort sein, an dem OpenJDK 17 installiert wurde.

  • Android Sdk Path sollte der Ort sein, an dem das Android SDK installiert wurde. - Zum Beispiel %LOCALAPPDATA%\Android\Sdk\ unter Windows oder /Users/$USER/Library/Android/sdk/ unter macOS.

Sobald dies konfiguriert ist, kann alles auf Android exportiert werden!

Bemerkung

Wird die Fehlermeldung "Could not install to device" angezeigt, sollte sichergestellt werden, dass nicht bereits eine andere Applikation mit dem selben Android Package-Namen auf dem Gerät installiert, aber mit einem anderen Schlüssel signiert ist.

Ist auf dem Gerät bereits eine Applikation mit demselben Android-Paketnamen, aber einem anderen Signierschlüssel installiert, muss die betroffene Applikation vom Android Gerät entfernt werden, bevor wieder zu Android exportiert werden kann.

Bereitstellung von Launcher-Icons

Launcher-Icons werden von Android Launcher-Apps verwendet, um Ihre Anwendung den Benutzern zu präsentieren. Godot benötigt nur hochauflösende Icons (für Bildschirme mit xxxhdpi-Dichte) und generiert automatisch Varianten mit niedrigerer Auflösung.

There are three types of icons:

  • Haupt-Icon: Das "klassische" Symbol. Dies wird exklusiv für alle Android-Versionen bis Android 8 (Oreo) verwendet. Es muss mindestens 192×192 px groß sein.

  • ** Adaptive Icons: ** Ab (einschließlich) Android 8 wurden Adaptive Icons <https://developer.android.com/guide/practices/ui_guidelines/icon_design_adaptive> _ eingeführt. Anwendungen müssen separate Hintergrund- und Vordergrund-Icons enthalten, um ein natives Aussehen zu erhalten. Die Launcher-Anwendung des Benutzers steuert die Animation und Maskierung des Icons. Es muss mindestens 432×432 px groß sein.

  • Themed Icons (optional): Starting from Android 13 (inclusive), Themed Icons were introduced. Applications will need to include a monochrome icon to enable this feature. The user's launcher application will control the icon's theme. Must be at least 432×432 px.

Siehe auch

Es ist wichtig, beim Entwerfen adaptiver Icons einige Regeln einzuhalten. Google Design hat einen schönen Artikel bereitgestellt, der hilft, diese Regeln und einige der Funktionen adaptiver Icons zu verstehen.

Vorsicht

Die wichtigste Regel für das Design adaptiver Icons besteht darin, dass sich Ihre Icon-kritischen Elemente in der sicheren Zone befinden: ein zentrierter Kreis mit einem Durchmesser von 66 dp (264 Pixel auf xxxhdpi), um zu vermeiden, dass er vom Launcher abgeschnitten wird.

If you don't provide the requested icons (except for Monochrome), Godot will replace them using a fallback chain, trying the next in line when the current one fails:

  • Haupt-Icon: Mitgeliefertes Haupt-Icon -> Projekt-Icon -> Default-Godot-Haupt-Icon.

  • Adaptiver Icon-Vordergrund: Mitgeliefertes Vordergrund-Icon -> Mitgeliefertes Haupt-Icon -> Projekt-Icon -> Default-Godot-Vordergrund-Icon.

  • Adaptiver Icon-Hintergrund: Mitgeliefertes Hintergrund-Icon -> Default-Godot-Hintergrund-Icon.

Es wird dringend empfohlen, alle angeforderten Icons mit ihren angegebenen Auflösungen bereitzustellen. Auf diese Weise wird Ihre Anwendung auf allen Android-Geräten und -Versionen gut aussehen.

Export für den Google Play Store

All new apps uploaded to Google Play after August 2021 must be an AAB (Android App Bundle) file.

Uploading an AAB or APK to Google's Play Store requires you to sign using a non-debug keystore file; such a file can be generated like this:

keytool -v -genkey -keystore mygame.keystore -alias mygame -keyalg RSA -validity 10000

This keystore and key are used to verify your developer identity, remember the password and keep it in a safe place! It is suggested to use only upper and lowercase letters and numbers. Special characters may cause errors. Use Google's Android Developer guides to learn more about app signing.

Füllen Sie nun die folgenden Formulare in Ihrem Android-Export-Profil aus:

../../_images/editor-export-presets-android.png
  • Release: Geben Sie den Pfad zu der gerade generierten Keystore-Datei ein.

  • Release User: Ersetzen durch den Schlüssel-Alias.

  • Release Password: Schlüssel-Passwort. Beachten Sie, dass das Keystore-Passwort und das Schlüsselpasswort derzeit identisch sein müssen.

Vergessen Sie nicht, beim Exportieren die Checkbox Exportieren mit Debug zu deaktivieren.

../../_images/export-with-debug-button.png

Optimizing the file size

If you're working with APKs and not AABs, by default, the APK will contain native libraries for both ARMv7 and ARMv8 architectures. This increases its size significantly. To create a smaller file, uncheck either Armeabi-v 7a or Arm 64 -v 8a in your project's Android export preset. This will create an APK that only contains a library for a single architecture. Note that applications targeting ARMv7 can also run on ARMv8 devices, but the opposite is not true. The reason you don't do this to save space with AABs is that Google automatically splits up the AAB on their backend, so the user only downloads what they need.

Sie können die Größe weiter optimieren, indem Sie eine Android-Exportvorlage mit nur den Funktionen erstellen, die Sie benötigen. Weitere Informationen finden Sie unter Einen Build auf Größe optimieren.

Umgebungsvariablen

Sie können die folgenden Umgebungsvariablen verwenden, um Exportoptionen außerhalb des Editors festzulegen. Während des Exportvorgangs überschreiben diese die Werte, die Sie im Exportmenü festgelegt haben.

Android-Export-Umgebungsvariablen

Export-Option

Umgebungsvariable

Verschlüsselung / Verschlüsselungsschlüssel

GODOT_SCRIPT_ENCRYPTION_KEY

Optionen / Keystore/ Debug

GODOT_ANDROID_KEYSTORE_DEBUG_PATH

Optionen / Keystore / Debug Benutzer

GODOT_ANDROID_KEYSTORE_DEBUG_USER

Optionen / Keystore / Debug Passwort

GODOT_ANDROID_KEYSTORE_DEBUG_PASSWORD

Optionen / Keystore / Release

GODOT_ANDROID_KEYSTORE_RELEASE_PATH

Optionen / Keystore / Release Benutzer

GODOT_ANDROID_KEYSTORE_RELEASE_USER

Optionen / Keystore / Release Passwort

GODOT_ANDROID_KEYSTORE_RELEASE_PASSWORD

Exportoptionen

You can find a full list of export options available in the EditorExportPlatformAndroid class reference.