This translation is community contributed and may not be up to date. We only maintain the English version of the documentation. Read this manual in English
Während du deine Anwendung entwickelst, solltest du dir angewöhnen, das Spiel so oft wie möglich auf den Zielplattformen zu testen. So erkennst du Leistungsprobleme früh im Entwicklungsprozess, wenn sie sich noch wesentlich leichter beheben lassen. Es wird außerdem empfohlen, auf allen Zielplattformen zu testen, um Unterschiede etwa bei Shadern zu finden. Bei der Entwicklung für Mobilgeräte kannst du die Entwicklungs-App für Mobilgeräte verwenden, um Inhalte an die App zu übertragen, statt jedes Mal ein vollständiges Bundle erstellen und die App deinstallieren und erneut installieren zu müssen.
Du kannst direkt im Defold-Editor ein Anwendungs-Bundle für alle von Defold unterstützten Plattformen erstellen, ohne externe Werkzeuge zu benötigen. Mit unseren Kommandozeilenwerkzeugen kannst du Bundles auch über die Kommandozeile erstellen. Für die Erstellung eines Anwendungs-Bundles ist eine Netzwerkverbindung erforderlich, wenn dein Projekt eine oder mehrere native Erweiterungen (native extensions) enthält.
Du erstellst ein Anwendungs-Bundle über die Option Bundle im Menü Project:

Wenn du eine der Menüoptionen auswählst, öffnet sich das Dialogfeld Bundle für die jeweilige Plattform.
Beim Erstellen eines Bundles für dein Spiel kannst du einen Build-Bericht erstellen lassen. Damit verschaffst du dir einen guten Überblick über die Größe aller Assets, die in deinem Spiel-Bundle enthalten sind. Aktiviere dazu beim Erstellen des Bundles einfach das Kontrollkästchen Generate build report.

Weitere Informationen zu Build-Berichten findest du im Handbuch zum Profiling.
Das Erstellen eines Android-Anwendungs-Bundles (.apk-Datei) wird im Android-Handbuch beschrieben.
Das Erstellen eines iOS-Anwendungs-Bundles (.ipa-Datei) wird im iOS-Handbuch beschrieben.
Das Erstellen eines macOS-Anwendungs-Bundles (.app-Datei) wird im macOS-Handbuch beschrieben.
Das Erstellen eines Linux-Anwendungs-Bundles erfordert keine besondere Einrichtung und keine optionale plattformspezifische Konfiguration in der Datei game.project für die Projekteinstellungen.
Das Erstellen eines Windows-Anwendungs-Bundles (.exe-Datei) wird im Windows-Handbuch beschrieben.
Das Erstellen eines HTML5-Anwendungs-Bundles sowie optionale Einrichtungsschritte werden im HTML5-Handbuch beschrieben.
Du kannst eine spezielle Version eines HTML5-Anwendungs-Bundles für Facebook Instant Games erstellen. Dieser Vorgang wird im Handbuch zu Facebook Instant Games beschrieben.
Der Editor verwendet unser Kommandozeilenwerkzeug Bob, um das Anwendungs-Bundle zu erstellen.
Bei der täglichen Entwicklung deiner Anwendung erstellst du Builds und Bundles wahrscheinlich im Defold-Editor. Unter anderen Umständen möchtest du Anwendungs-Bundles möglicherweise automatisch erzeugen, etwa Builds für alle Zielplattformen in einem Durchlauf bei der Veröffentlichung einer neuen Version oder nächtliche Builds der neuesten Spielversion, vielleicht in einer CI-Umgebung. Mit dem Kommandozeilenwerkzeug Bob kannst du Builds und Bundles einer Anwendung außerhalb des üblichen Arbeitsablaufs im Editor erstellen.
Der logische Aufbau eines Bundles sieht folgendermaßen aus:

Ein Bundle wird in einem Ordner ausgegeben. Je nach Plattform kann dieser Ordner außerdem als ZIP-Archiv in einer .apk oder .ipa gespeichert werden.
Der Inhalt des Ordners hängt von der Plattform ab.
Neben den ausführbaren Dateien stellt unser Vorgang zur Bundle-Erstellung auch die für die Plattform erforderlichen Assets zusammen (z. B. die .xml-Ressourcendateien für Android).
Mit der Einstellung bundle_resources kannst du Assets festlegen, die unverändert in das Bundle aufgenommen werden sollen. Das kannst du für jede Plattform einzeln steuern.
Die Spiel-Assets befinden sich in der Datei game.arcd und werden einzeln mit LZ4 komprimiert.
Mit der Einstellung custom_resources kannst du Assets festlegen, die (komprimiert) in die Datei game.arcd aufgenommen werden sollen.
Auf diese Assets kannst du mit der Funktion sys.load_resource() zugreifen.
Beim Erstellen eines Anwendungs-Bundles kannst du zwischen einem Debug- und einem Release-Bundle wählen. Die Unterschiede zwischen den beiden Bundles sind gering, du solltest sie jedoch beachten:
print() noch die Ausgabe nativer Erweiterungen anis_debug in sys.get_engine_info() auf false gesetzttostring() keine Rückwärtssuche für hash-Werte durch. In der Praxis bedeutet das, dass tostring() für einen Wert vom Typ url oder hash dessen numerische Darstellung statt der ursprünglichen Zeichenfolge zurückgibt ('hash: [/camera_001]' gegenüber 'hash: [11844936738040519888 (unknown)]')