In Teil zehn der Adobe AIR-Reihe geht es um zwei nützliche Events: Invoke.Event
und Event.EXITING
. Sie werden beim Programmaufruf bzw. beim Beenden des Programms ausgelöst.
Möchte man beim Starten der eigenen AIR-Applikation einen Code ausführen, kann man einen Eventlistener für das Event Invoke.Event
setzen.
Hier der Code für den Programmstart:
[as]
import flash.desktop.*;
import flash.events.*;
// event listener für Invocation (initialer Aufruf)
NativeApplication.nativeApplication.addEventListener(InvokeEvent.INVOKE, onInvokeEvent);
function onInvokeEvent(invocation:InvokeEvent):void {
trace („Adobe AIR – Programmstart“);
}
[/as]
Beenden des AIR-Programms
Möchte man das Programm über ActionScript beenden, geht dies mit NativeApplication.nativeApplication.exit()
. Da man diesen Befehl gezielt an einer Stelle selbst schreibt, kann man dafür sorgen, dass evtl. zu sichernde Daten vorher gespeichert werden.
Klickt der Anwender jedoch z.B. auf das Schließen-Symbol des Fensters, wird die Anwendung ebenfalls beendet. Möchte man wichtige Informationen noch abspeichern, muss man diesen Fall abfangen.
Hier der Code, um das Beenden des Programms per Eventlistener abzufangen.
[as]
// event listener für close button des fensters (betriebssystem)
NativeApplication.nativeApplication.addEventListener(Event.EXITING, onExit);
// abspeichern beim schließen des programms
function onExit(evt:Event) {
save();
}
[/as]
Link: Application launching and exit options
[ad]
bei diesem Beispiel könnte man noch mit:
evt.preventDefault(); das Beenden unterbrechen
// z.B. save();
exit(); das Programm beenden
das Beenden abfangen und unterbrechen.