Debuggen von ActionScript 3.0



Info zum ActionScript 3.0-Debugger

Flash bietet einen separaten Debugger für ActionScript 3.0, der etwas anders arbeitet als der ActionScript 2.0-Debugger. Der ActionScript 3.0-Debugger funktioniert nur mit ActionScript 3.0 FLA- und AS-Dateien. Die Veröffentlichungseinstellungen der FLA-Dateien müssen auf Flash Player 9 gesetzt sein. Wenn Sie eine ActionScript 3.0-Debugging-Sitzung einleiten, startet Flash die eigenständige Debug-Version von Flash Player, um die SWF-Datei abzuspielen. Die Wiedergabe der SWF-Datei durch den Debug Flash Player erfolgt in einem anderen Fenster, als dem der Flash-Authoring-Anwendung.

Der ActionScript 3.0-Debugger konvertiert den Flash-Arbeitsbereich in einen Debug-Arbeitsbereich, d. h. es werden zum Debuggen verwendete Bedienfelder angezeigt, einschließlich dem Bedienfeld „Aktionen“ und/oder das Skriptfenster, die Debug-Konsole und das Bedienfeld „Variablen“. In der Debug-Konsole werden der Call-Stack und die Werkzeuge zum Durchlaufen der Skripts angezeigt. Im Bedienfeld „Variablen“ werden die im aktuellen Bereich vorhandenen Variablen mit ihren Werten angezeigt, und Sie können diese Werte selbst aktualisieren.

Debugging-Modus starten

Wie Sie eine Debugging-Sitzung starten, hängt vom Typ der bearbeiteten Dateien ab. Stößt Flash während einer Debugging-Sitzung auf einen Haltpunkt oder einen Laufzeitfehler, wird die Ausführung von ActionScript unterbrochen.

Wenn eine Debugging-Sitzung von Flash eingeleitet wird, werden der für diese Sitzung exportieren SWF-Datei spezielle Informationen hinzugefügt. Diese Informationen ermöglichen es dem Debugger, die Nummern der Codezeilen anzugeben, in denen Fehler festgestellt wurden.

Diese speziellen Debugging-Informationen können Sie in alle SWF-Dateien einbinden, die anhand einer bestimmten FLA-Datei im Dialogfeld „Einstellungen für Veröffentlichungen“ erstellt wurde. Dadurch können Sie eine SWF-Datei debuggen, ohne ausdrücklich eine Debugging-Sitzung einzuleiten. Durch die Debugging-Informationen wird die SWF-Datei etwas größer.

Debugging aus einer FLA-Datei heraus starten

 Wählen Sie „Debuggen“ > „Debuggen“.

Debugging von einer ActionScript 3.0 AS-Datei aus starten

  1. Öffnen Sie die ActionScript-Datei im Skriptfenster, und wählen Sie oben im Skriptfenster aus dem Zielmenü die FLA-Datei aus, die mit der ActionScript-Datei kompiliert werden soll. Die FLA-Datei muss ebenfalls in Flash geöffnet sein, damit sie in diesem Menü angezeigt wird.
  2. Wählen Sie „Debuggen“ > „Debuggen“.

Debugging-Informationen zu allen anhand einer FLA-Datei erstellten SWF-Dateien hinzufügen

  1. Wählen Sie bei geöffneter FLA-Datei „Datei“ > „Einstellungen für Veröffentlichungen“ aus.
  2. Klicken Sie im Dialogfeld „Einstellungen für Veröffentlichungen“ auf die Registerkarte „Flash“.
  3. Wählen Sie „Debugging erlauben“.

Debugging-Modus beenden

 Klicken Sie in der Debug-Konsole auf „Debug-Sitzung beenden“.

Haltepunkte setzen und entfernen

Fügen Sie dem ActionScript-Code Haltepunkte hinzu, um die Ausführung des Codes zu unterbrechen. Sobald die Ausführung unterbrochen wird, können Sie den Code Zeile für Zeile durchlaufen und ausführen, verschiedene Abschnitte Ihres ActionScript-Codes anzeigen, die Werte von Variablen und Ausdrücken anzeigen und Variablenwerte bearbeiten.

Hinweis: Bei ASC- und JSFL-Dateien (ActionScript for Communication, Flash JavaScript) ist das Hinzufügen von Haltepunkten nicht möglich.

Haltepunkte setzen

 Klicken Sie im Bedienfeld „Aktionen“ oder im Skriptfenster auf den linken Rand, und zwar neben der Codezeile, in der der Haltepunkt gesetzt werden soll.

Haltepunkte entfernen

 Klicken Sie im Bedienfeld „Aktionen“ oder im Skriptfenster auf den Haltepunkte, den Sie entfernen möchten.

Verschiedene Codezeilen durchlaufen

Wenn die Ausführung des ActionScripts durch einen Haltepunkt oder einen Laufzeitfehler unterbrochen wurde, können Sie den Code Zeile für Zeile durchlaufen, wobei Sie in Funktionsaufrufe hineinspringen oder Funktionsaufrufe überspringen können. Sie haben auch die Möglichkeit, den Code unmittelbar weiter auszuführen.

Code Zeile für Zeile durchlaufen

 Klicken Sie in der Debug-Konsole auf „Hineinspringen“.

Funktionsaufrufe überspringen

 Klicken Sie in der Debug-Konsole auf „Überspringen“.

Funktionsaufrufe verlassen

 Klicken Sie in der Debug-Konsole auf „Verlassen“.

Normale Codeausführung wieder aufnehmen

 Klicken Sie in der Debug-Konsole auf „Weiter“.

Skripts im Call-Stack anzeigen und überprüfen

Wenn die Codeausführung im Debugger angehalten wird, können Sie in der Debug-Konsole den Call-Stack einsehen und im Call-Stack die Skripts anzeigen, die Funktionen enthalten. Im Call-Stack wird die aktuelle Liste der verschachtelten Funktionsaufrufe angezeigt, der Ausführung noch nicht abgeschlossen ist.

Sie können die individuellen Skripts anzeigen, die die einzelnen Funktionen enthalten.

 Doppelklicken Sie in der Debug-Konsole auf den Namen des Skripts im Call-Stack.

Variablenwerte anzeigen und ändern

Im Bedienfeld „Variablen“ können Sie die Werte von Variablen und Eigenschaften anzeigen und bearbeiten.

Variablenwerte anzeigen

  1. Wählen Sie im Bedienfeld „Variablen“ aus dem Menü „Bedienfeld“ die anzuzeigenden Variablentypen aus.
    • „Konstanten anzeigen“ zeigt die konstanten Werte an (Variablen mit festen Werten).

    • „Statische anzeigen“ zeigt Variablen an, die zu der Klasse und nicht zu Instanzen dieser Klasse gehört.

    • „Unzugängliche Mitgliedervariablen anzeigen“ zeigt Variablen an, auf die andere Klassen oder Namespaces nicht zugreifen können. Dazu gehören geschützte, private oder interne Variablen des Namespace.

    • „Zusätzliche Hexadezimaldarstellung anzeigen“ fügt überall dort Hexadezimalwert hinzu, wo Dezimalwerte angezeigt werden. Dies ist vor allem bei Farbwerten nützlich. Für Dezimalwerte von 0 bis 9 werden keine Hexadezimalwerte angezeigt.

    • „Qualifizierte Namen anzeigen“ zeigt die Variablentypen sowohl mit dem Paketnamen als auch dem Klassennamen an.

  2. Erweitern Sie die Baumstruktur der FLA-Objektstruktur, bis Sie die gewünschte Variable sehen können.

Den Wert einer Variablen bearbeiten

  1. Doppelklicken Sie im Bedienfeld „Variablen“ auf den Wert der Variablen.
  2. Geben Sie den neuen Wert ein, und drücken Sie die Eingabetaste. Der neue Wert wird bei späteren Codeausführungen verwendet.

Compiler-Warnmeldungen steuern

Sie können steuern, welche Typen von Fehlermeldungen vom ActionScript-Compiler im Bedienfeld „Compiler-Fehler“ generiert werden. Nachdem vom Compiler ein Fehler gemeldet wurde, können Sie durch Doppelklicken auf die Fehlermeldung an die Codezeile springen, die den Fehler verursacht hat.

  1. Wählen Sie „Datei“ > „Einstellungen für Veröffentlichungen“.
  2. Klicken Sie auf „Flash“.
  3. Klicken Sie auf die Schaltfläche „ActionScript-Einstellungen“.
  4. Treffen Sie eine Auswahl der Fehleroptionen:
    • Im strikten Modus werden Warnungen als Fehler gemeldet, d. h. solang diese Fehler bestehen, kann keine erfolgreiche Kompilierung ausgeführt werden.

    • Im Warnmodus werden zusätzliche Warnungen gemeldet, die nützlich sind, um beim Aktualisieren von ActionScript 2.0-Code auf ActionScript 3.0 Inkompatibilitäten zu entdecken.

Zu Fehlern im Code navigieren

Wenn Flash beim Kompilieren oder Ausführen einen Fehler im ActionScript-Code feststellt, wird dieser Fehler im Bedienfeld „Compiler-Fehler“ angezeigt. Vom Bedienfeld „Compiler-Fehler“ aus können Sie zu der Codezeile navigieren, die den Fehler verursacht hat.

 Doppelklicken Sie im Bedienfeld „Compiler-Fehler“ auf den Fehler.

Remote ActionScript 3.0-SWF-Dateien debuggen

In ActionScript 3.0 können Sie zum Debuggen einer Remote-SWF-Datei den eigenständigen Debug Flash Player sowie die ActiveX- und Plug-In-Version des Players einsetzen. Sie finden ihn im Verzeichnis Flash-Installationsverzeichnis/Players/Debug/. Beim ActionScript 3.0 Debugger ist das Remote-Debugging jedoch auf Dateien beschränkt, die sich auf demselben lokalen Host befinden wie die Flash-Authoring-Anwendung und die dem eigenständigen Debug Flash Player, der ActiveX- oder Plug-In-Version des Players wiedergegeben wird.

Wenn Sie bei einer Datei das Remote-Debugging zulassen möchten, müssen Sie das Debugging in den „Einstellungen für Veröffentlichungen“ aktivieren. Sie können Ihre SWF-Datei mit einem Debugging-Kennwort veröffentlichen, um sicherzustellen, dass nur autorisierte Benutzer die Datei debuggen können.

Wie auch in JavaScript oder HTML können Benutzer clientseitige Variablen in ActionScript anzeigen. Zur sicheren Speicherung von Variablen müssen Sie diese an eine Serveranwendung übertragen, statt sie in der Datei zu speichern. Viele Entwickler legen außerdem Wert darauf, andere Informationen, wie beispielsweise die Struktur von Movieclips, geheim zu halten. Mithilfe eines Debugging-Kennworts können Sie Ihre Arbeit schützen.

Remote-Debugging einer SWF-Datei aktivieren und ein Debugging-Kennwort festlegen

In ActionScript 3.0 FLA-Dateien kann kein Debugging an Code in Bildskripts durchgeführt werden. Mit dem ActionScript 3.0 Debugger können Sie nur Code in externen AS-Dateien debuggen.

  1. Öffnen Sie die FLA-Datei.
  2. Wählen Sie „Datei“ > „Einstellungen für Veröffentlichungen“.
  3. Klicken Sie im Dialogfeld „Einstellungen für Veröffentlichungen“ auf die Registerkarte „Flash“, und aktivieren Sie das Kontrollkästchen „Debuggen erlauben“.
  4. Schließen Sie das Dialogfeld „Einstellungen für Veröffentlichungen“, und wählen Sie einen der folgenden Befehle aus:
    • „Datei“ > „Exportieren“ > „Film exportieren“

    • „Datei“ > „Veröffentlichen“

  5. Lassen Sie die SWF-Datei auf dem lokalen Computer, um auf dem lokalen Host ein Remote-Debugging auszuführen, oder laden Sie sie auf den Webserver hoch.

    Da SWF-Datei nicht über Haltepunktinformationen verfügt, können Sie den Code während der Ausführung nicht Schritt für Schritt durchlaufen, wenn Sie die Datei auf einen Remote-Server hochladen. Führen Sie diese Aufgabe auf dem lokalen Host aus.

  6. Wählen Sie in Flash „Debuggen“ > „Remote-Debug-Sitzung beginnen“ > „ActionScript 3.0“.

    Flash öffnet das Bedienfeld „ActionScript 3.0 Debugger“ auf und wartet darauf, dass eine Verbindung zu einem Debug Flash Player hergestellt wird. Sie müssen den Debug Flash Player innerhalb von 2 Minuten starten. Wenn mehr als 2 Minuten vergehen, müssen Sie diesen Schritt wiederholen.

  7. Öffnen Sie die SWF-Datei in der Debug-Version des eigenständigen Flash Players, der ActiveX- oder Plug-In-Version des Players. Der eigenständige Debug Player befindet sich im Verzeichnis Flash-Installationsverzeichnis/Players/Debug/. Stellen Sie keine Verbindung zu einer Datei auf einem anderen Computer her, da der Debugger dann keine Haltepunktinformationen empfangen kann.

    Die Debug-Sitzung beginnt, sobald der Debug Player eine Verbindung mit dem Bedienfeld „ActionScript 3.0 Debugger“ in Flash herstellt.

Den Debugger von einem Remote-Standort aus aktivieren

  1. Öffnen Sie die Flash-Authoring-Anwendung, sofern sie noch nicht geöffnet ist.
  2. Wählen Sie „Debuggen“ > „Remote-Debug-Sitzung beginnen“ >„ActionScript 3.0“.
  3. Öffnen Sie die veröffentlichte SWF-Datei von einem Remote-Standort aus in einem Browser oder in der Debugger-Version des eigenständigen Players.

    Falls das Dialogfeld „Remote-Debugging“ nicht geöffnet ist, klicken Sie mit der rechten Maustaste (Windows) bzw. bei gedrückter Befehlstaste (Macintosh) auf die SWF-Datei, und wählen Sie im Kontextmenü den Befehl „Debugger“.

  4. Wählen Sie im Dialogfeld „Remote-Debugging“ die Option „Lokaler Host“, und wählen Sie die zu öffnende Datei.

    Die Anzeigeliste der SWF-Datei wird im Debugger angezeigt. Wenn die SWF-Datei nicht wiedergegeben wird, wurde der Debugger möglicherweise angehalten, klicken Sie auf „Weiter“, um die Wiedergabe zu starten.