Adobe Air (wiwobooks.com Release)
Installationsdialoge von AIR sind im gleichen dunklen Farbspektrum gehalten. Abbildung 18.1 zeigt das erste erscheinende Fenster nach dem Start der Installation eines Programms.
Abbildung 18.1 Vorbereitung der Anwendungsinstallation
Auch wenn die mögliche grafische Anpassung des Installationsdialogs seit jeher ganz oben auf der Wunschliste der AIR-Anwendungsentwickler steht, ist diese Einheitlichkeit in der Benutzererfahrung von Adobe so gewollt, schließlich soll der Benutzer sein Vertrauen in die AIR-Plattform auf eine neue Anwendung übertragen können und sich dabei sicher wähnen, dass etablierte Sicherheitsmechanismen der AIR-Plattform greifen.
In Abbildung 18.2 sehen Sie einen typischen Installationsdialog einer AIR-Anwendung – in diesem Fall handelt es sich um Adobes kuler, der Desktopversion einer Webapplikation, mit der Sie abgestimmte Farbschemata verwalten können. Beachten Sie das gelbe Fragezeichen, das erscheint, obwohl der Anbieter der Software im Installationsdialog eindeutig identifiziert ist (also das verwendete CodeSigning-Zertifikat verifiziert werden konnte) – in diesem Fall ist der Anbieter niemand anderes als Adobe selbst.
Abbildung 18.2 Installationsdialog einer typischen AIR-Anwendung
Wenn Sie einen Blick auf den unteren Bereich des Fensters werfen, sehen Sie den genauen Grund für das gelbe Fragezeichen: Die Identität des Anbieters wurde zwar verifiziert, aber die Anwendung hat (im Rahmen der vom Systemadministrator gesetzten Berechtigungen) unbegrenzten Zugang auf das Dateisystem des Computers. So viel gleich vorweg: Nein, es gibt derzeit keine Version mit einem grünen Häkchen, denn in der aktuellen Version AIR 1.5 gibt es keine Möglichkeit, einer AIR-Anwendung grundsätzlich den Zugriff auf das Dateisystem zu verwehren. Seien wir ehrlich: Im Kontext dessen, wofür AIR gedacht ist, ergäbe das in den allermeisten Fällen auch gar keinen Sinn, denn schließlich ist eine Interaktion mit dem Betriebssystem das, was wir von einer Desktopanwendung erwarten.
Bis zur letzten Beta-Version von AIR prangte anstelle des gelben Fragezeichens übrigens noch ein rotes Kreuz. Adobe hat meiner Meinung nach klug daran getan, dies zu entschärfen. Denn wer wird sich eine Anwendung installieren, die bei der Installation einen dicken Warnhinweis mit einem roten Kreuz trägt? Das rote Kreuz taucht allerdings nach wie vor auf, wenn die Anwendung nicht mit einem »echten« Code-Signing-Zertifikat signiert wurde, sondern mit einem selbst signierten Zertifikat.
18.2 Flash- und Flex-Inhalte kompilieren
Wie Sie im Einführungsteil erfahren haben, werden Ajax-Inhalte in AIR interpretiert, also zur Laufzeit ausgewertet. Anders sieht das bei AIR-Anwendungen aus, die MXML- und ActionScript-Inhalte enthalten – diese Inhalte müssen zur Entwurfszeit kompiliert werden. Das Flex SDK enthält zur Kompilierung von ActionScript- und MXML-Inhalten im Verzeichnis bin die Datei mxmlc (mxmlc.exe unter Windows), mit der Flex-Programme kompiliert werden können. In diesem und in den nächsten Abschnitten sehen Sie, wie Sie Ihre AIR-Anwendung Schritt für Schritt mithilfe der Kommandozeile für die Veröffentlichung vorbereiten können. Das Gegenstück zu mxmlc für das Kompilieren von AIR-Anwendungen heißt amxmlc (amxmlc.bat unter Windows). Dahinter verbirgt sich lediglich ein modifizierter Aufruf von mxmlc, der bewirkt, dass die Konfigurationsdatei für AIR-Anwendungen (air-config.xml im frameworks-Verzeichnis von Flex SDK) anstatt für Flex-Anwendungen (flex-config.xml im frameworks-Verzeichnis) aufgerufen wird.
Lösungsweg
Aufruf von amxmlc (amxmlc.bat unter Windows) in der Kommandozeile
So geht es
Mit folgendem Aufruf wird die Datei myApp.mxml zur Datei myApp.swf kompiliert:
amxmlc myApp.mxml
Wenn die Ausgangsdatei eine ActionScript-Datei ist, können Sie amxmlc genauso ohne Parameter verwenden. Der folgende Aufruf kompiliert myApp.as zu myApp.swf:
amxmlc myApp.as
Wollen Sie der Zieldatei einen anderen Namen geben, können Sie den Parameter output angeben und die Quelldatei nach doppelten Minuszeichen: amxmlc -output appMitAnderemNamen.swf -- myApp.mxml
Wenn Sie eine Code-Bibliothek myLib.swc im Verzeichnis libs/ mit einkompilieren wollen, sieht der Aufruf folgendermaßen aus:
amxmlc -library-path+=libs/myLib.swc -- myApp.mxml
Wollen Sie, dass Ihre Zieldatei eine Laufzeitbibliothek (runtime shared library, RSL) mit Namen myRSL.swf verwendet, formulieren Sie den Aufruf wie folgt: amxmlc
Weitere Kostenlose Bücher