22.3 Entwicklung
Die Umsetzung einer Central-Awendung gliedert sich grundsätzlich immer in die folgenden fünf Schritte:
|
Erstellen einer Central-Anwendung in Flash |
|
Beziehen einer Produkt-ID |
|
Anpassen der product.xml-Datei |
|
Vertrieb der Central-Anwendung |
|
Installation der Anwendung in Central |
Da der Central Player auf dem Flash Player 6 basiert, empfiehlt es sich in Flash, das entsprechende Exportformat bereits zu Beginn der Entwicklung festzulegen. Dieses finden Sie bei Flash MX 2004 innerhalb des Registers Flash unter Datei $punkt Einstellungen fuer Veroeffentlichungen. In Flash MX 2004 koennen Sie den Export in das Flash-Format fuer Flash Player 6 ab dem Release 65 optimieren, was zu einer besseren Abspielleistung im Central Player fuehrt. Die Option fuer den Debugger sollten Sie deaktiviert lassen, da Central den Debugger von Flash fuer die Fehlersuche nicht unterstuetzt. Eine einfache Alternative bietet hier das im Central SDK enthaltene Debug-Fenster, das die trace-Anweisungen einer Central-Anwendung ausgibt. Vergessen Sie jedoch nicht, vor dem endgueltigen Vertrieb Ihrer Anwendung die trace-Anweisungen wieder zu entfernen bzw. der Einfachheit halber fuer das Veroeffentlichen die Option Trace-Aktionen uebergehen zu waehlen.
Abbildung 22.2
Einstellungen für Veröffentlichungen
Bei den Dokumenteinstellungen für die Anwendung haben Sie freie Hand, wobei die Dokumentgröße nicht weniger als 500 x 300 Pixel betragen sollte (Modifizieren • Dokument). Übrigens: Den verfügbaren Platz des Anwendungsfensters ermitteln Sie zur Laufzeit über das Shell-Objekt mit der Methode getBounds und nicht über das Stage-Objekt, da sich dieses nicht nur auf die Anwendung, sondern auf das komplette Central-Fenster bezieht. Macromedia empfiehlt außerdem eine Bildrate von 21 Bildern pro Sekunde für eine optimale Balance zwischen Abspielgeschwindigkeit und Prozessorauslastung.
Um die Anwendung korrekt in Central zu integrieren, ist ein Minimum an ActionScript notwendig. Zum einen muss sich die SWF-Datei bei der Central-Umgebung anmelden, und zum anderen ist eine Initialisierung beim Start bzw. ein Aufräumen nach getaner Arbeit empfehlenswert. Platzieren Sie zu diesem Zweck das folgende Skript im ersten Schlüsselbild:
// Dieses Ereignis wird von Central aufgerufen, sobald die Anwendung geladen ist.
// Platzieren Sie hier Anweisungen, um die Anwendung zu initialisieren.
this.onActivate = function(shell, appId, shellId, baseTabIndex,
appData) {
// Setze Nachricht in der Central-Statusleiste
shell.setStatus("Anwendung ist geladen!");
};
// Dieses Ereignis wird von Central aufgerufen, sobald die Anwendung beendet wird.
// Platzieren Sie hier Anweisungen, um nicht mehr
benoetigte Ressourcen zu loeschen (z. B. Variablen).
this.onDeactivate = function(shell, appId, shellId, baseTabIndex, appData) {
};
// Teile Central (Central Shell) mit, dass die Anwendung geladen wurde.
// Central ruft anschliessend die onActivate-Methode auf.
Central.initApplication(this, this);
Abbildung 22.3
Initialisierung der Anwendung in ActionScript
Die restliche Anwendung bauen Sie weitestgehend wie gewohnt zusammen. D. h. Sie dürfen Flash-Elemente zuzüglich der im Kasten Central Player versus Flash Player aufgelisteten Central-Erweiterungen einsetzen. Anschließend beantragen Sie eine eindeutige Produkt-ID bei Macromedia, oder Sie verwenden für Testzwecke die im Central SKD mitgelieferte ID (CND100-062234-167221-651442). Berücksichtigen Sie jedoch, dass innerhalb von Central jede Anwendung eine eindeutige ID benötigt und sich so nur ein neues Modul gleichzeitig installieren lässt.
Zum Installationspaket einer Flash-Anwendung gehört eine Produktbeschreibung im XML-Format (product.xml). Die wichtigsten Angaben in der Produktbeschreibung umfassen Produktname, Produktversion, Preis, Produktkategorie, Produkt-ID, eine Kurzbeschreibung, Angaben zum Autor und Angaben zur eigentlichen Anwendung mit Anwendungsname, Hintergrundfarbe, Version und SWF-Datei. Weitere Informationen zu den erlaubten Elementen in der Produktbeschreibung finden Sie unter http://livedocs.macromedia.com/...:
<?xml version="1.0"?>
<product
name="meinProdukt"
version="1"
price="Free"
category="Productivity"
productID="CND100-062234-167221-651442" >
<description>
meineProduktBeschreibung
</description>
<author
name="meinName"
info="http://www.saschawolter.de/" >
</author>
<application
name="meineAnwendung"
src="meineAnwendung.swf"
background="#B88975"
version="1" >
</application>
</product>
Abbildung 22.4
Installation per Hand
Leider erfordert die Installation einer Central-Anwendung außerdem immer einen Webserver, auf dem sämtliche Dateien liegen – ein lokaler Webserver reicht zum Testen jedoch aus (localhost). Dies gilt ebenfalls für die Produktbeschreibung, die sich unter der gleichen Domain befinden muss wie die restlichen Dateien. Sobald diese Voraussetzungen erfüllt sind, erlaubt Central die Installation über das Menü File • Install Application from URL (siehe Abbildung 22.4).
Abbildung 22.5
Automatische Installation mit einem »Installation Badge«
Nicht nur optisch schöner, sondern auch benutzerfreundlicher sind vorbereitete Installationsroutinen, die Macromedia als »Installation Badge« bezeichnet. Im Central SDK sind gebrauchsfertige Exemplare sowie der zugehörige Quellcode im Flash-Format bereits enthalten.
Abbildung 22.6
Die fertige Anwendung in Central
Sie haben jetzt alle Vorbereitungen für den Vertrieb einer vollwertigen Central-Anwendung geschaffen und können dieses Gerüst nun mit eigenen Ideen füllen und um Pods und Agenten ergänzen.
Central Player versus Flash Player
Der Central Player bietet eine ganze Reihe an Erweiterungen, die so nicht im Flash Player enthalten sind. Gerade für Programmierer ergeben sich dadurch Möglichkeiten, von denen bei »normalen« Flash-Anwendungen ohne Central API (Application Programming Interface) nur geträumt werden kann:
|
1. GIF-Unterstützung: Der Central Player erlaubt das dynamische Laden von statischen GIF-Bildern in der Form this.loadMovie("http://www.flashforum.de/forum/kopf-fuss/
headlogo.gif");. |
|
2. Lokaler Cache: Medien können in einem lokalen Cache vorgehalten werden, um zum einen Ladezeit zu sparen und zum anderen auch den Offline-Betrieb zu gewährleisten. Die Central API bietet Anweisungen, um den aktuellen Verbindungsstatus zu überprüfen, Dateien lokal zwischenzuspeichern und wieder zu entfernen. |
|
3. Webservices: Die Central API unterstützt Webservices und SOAP, so wie dies mittlerweile auch mit der WebService-Klasse in Flash MX Professional 2004 möglich ist. |
|
4. XML-RPC: Der Aufruf von entfernten Methoden (Remote Procedure Calling) über XML ist durch XML-RPC erlaubt (http://www.xmlrpc.com/). |
|
5. MD5: Bei MD5 handelt es sich um einen Verschlüsselungsalgorithmus, der beispielsweise für die Übertragung von Passwörtern sehr nützlich ist. |
|
6. Reguläre Ausdrücke: Das RegExp-Objekt der Central API entspricht dem Funktionsumfang des gleichnamigen Objektes in ECMAScript und lässt sich somit wie das Pendant in JavaScript anwenden. |
|
7. Tooltipps: Tooltips auf Betriebssystemebene erlaubt die Anweisung MovieClip.tooltipText = "Tipp"; für beliebige Movieclips. |
|
8. Da Central-Anwendungen in der Central Shell ablaufen, ist der Einsatz von _root, _level0, _global und Stage nur eingeschränkt zu empfehlen, um Seiteneffekte mit anderen Anwendungen und der Shell zu vermeiden. |
|