Adobe Air (wiwobooks.com Release)
sind.
Detailliert auf diesen Aspekt einzugehen würde den Rahmen dieses Buchs sprengen. Wenn Sie mehr über die sandboxübergreifende Programmierung erfahren wollen, finden Sie in der Online-Dokumentation zu AIR unter http://tinyurl.com/ sandboxbridge weitere Informationen.
Einer der wichtigsten Aspekte von Desktopanwendungen im Vergleich zu Webanwendungen ist der Zugriff auf das Dateisystem des lokalen Computers. AIR bietet hierzu einen großen Umfang an Funktionalität.
12 Dateisystem
Im vorigen Kapitel haben Sie gesehen, wie der Inhalt Ihrer Anwendung und der Rest Ihrer Arbeitsumgebung voneinander abgetrennt und voreinander geschützt sind. Jetzt können Sie sich beruhigt einem der interessantesten Aspekte von AIR widmen: dem Zugriff auf das Dateisystem. Im Vergleich zur Verwendung des Flash Players im Kontext des Webbrowsers bildet der Zugriff auf das Dateisystem eine neue Kategorie von Funktionalität, und mit AIR halten innerhalb des Pakets flash.filesystem neue Klassen Einzug in ActionScript, die nur für die Verwendung mit der AIR-Laufzeitumgebung zur Verfügung stehen.
Klassenname File
FileMode
FileStream
Funktion
eine Referenz auf eine Datei oder Verzeichnis des Dateisystems
Konstanten zur Verwendung mit der FileStream -Klasse; definiert den Zugriffsmodus auf die FileStream -Instanz.
Mit einer FileStream -Instanz werden Dateien bzw. Verzeichnisse gelesen oder geschrieben.
Tabelle 12.1 Neue AIR-Klassen im Paket flash.filesystem
12.1 Synchrone und asynchrone Dateioperationen
Wenn Sie sich vor Augen führen, dass der Zugriff auf das Dateisystem einen Vorgang darstellt, auf deren Dauer oder Ende die AIR-Anwendung keinen direkten Einfluss hat, ist es nur logisch, dass Sie diesen Vorgang entweder synchron oder asynchron ausführen können. Dabei steht der Begriff synchron für das Prinzip, dass die Anwendung so lange stillsteht, bis das Ergebnis der Dateisystemoperation vorliegt, während der asynchrone Ansatz die Anwendung weiterlaufen lässt und das Ergebnis mithilfe Ereignis-Listenern »einfängt«. Sowohl die File -Klasse als auch die FileStream -Klasse verfügen über synchrone und asynchrone Methoden für das Lesen und Schreiben von Dateien, das Löschen, Verschieben und Kopieren von Ressourcen etc.
Die Funktionsweise von synchronen und asynchronen Methoden ist Ihnen in ActionScript vielleicht schon vom Umgang mit anderen externen Ressourcen bekannt: Dabei hält die Ausführung des Quelltexts bei den synchronen Methoden jeweils an und wird nach Abschluss der Operation in der nächsten Quelltextzeile fortgesetzt, während im Fall der asynchronen Methoden die Ausführung des Quelltexts fortgesetzt wird und ein (Zwischen-)Ergebnis der Operation mit Ereignis-Listenern abgefangen werden muss.
Ereignis-Listener bei Dateisystemoperationen
Nähere Informationen zu Ereignis-Listenern von Dateisystemoperationen finden Sie in Abschnitt 12.5.
Als Faustregel kann gelten, dass Sie synchrone Operationen eher vermeiden sollten, wenn zu erwarten ist, dass diese eine lange Zeit in Anspruch nehmen werden, da in dieser Zeit der Benutzer nicht mit der Anwendung interagieren kann. Auch der Aspekt der Kapselung, die bei objektorientierter Programmierung eine große Rolle spielt, kommt bei asynchronen Methoden besser zum Tragen, da Sie den verarbeitenden Quelltext in einer eigenen Ereignis-Listener-Funktion isoliert definieren müssen.
12.2 Vordefinierte Ressourcen verwenden
AIR definiert für einige Ressourcen auf dem lokalen System des Benutzers fertige Kürzel, die als statische Eigenschaften der File -Klasse zur Verfügung stehen, die ab Abschnitt 12.3 noch genauer erörtert wird. Jede dieser Eigenschaften ist selbst vom Type File , was die Verwendung dieser Ressourcen besonders einfach macht. Zusätzlich stellt die File -Klasse über die Methode getRootDirectories() ein Array mit File -Instanzen für alle Root-Verzeichnisse bzw. Laufwerke zur Verfügung. Tabelle 12.2 gibt Ihnen einen Überblick.
Eigenschaft/Methode Ressource
File.applicationDirectory das Verzeichnis der Anwendung
File.applicationStorage das Dokumentenverzeichnis der Anwendung Directory
File.desktopDirectory das Arbeitsplatzverzeichnis des Benutzers
Tabelle 12.2 Vordefinierte Ressourcen einer AIR-Anwendung
Eigenschaft/Methode
File.documentsDirectory
File.userDirectory
File.getRootDirectories()
Ressource
das Dokumentenverzeichnis des Benutzers das Benutzerverzeichnis
liefert ein Array mit allen Wurzelverzeichnissen bzw. Laufwerken
Tabelle
Weitere Kostenlose Bücher