Bücher online kostenlos Kostenlos Online Lesen
Adobe Air (wiwobooks.com Release)

Adobe Air (wiwobooks.com Release)

Titel: Adobe Air (wiwobooks.com Release)
Autoren:
Vom Netzwerk:
sehen Sie ein stark vereinfachtes Bespiel für eine Flex-basierte AIRAnwendung, die bei Bedarf auf die neueste heruntergeladene Version der Anwendung aktualisiert. Die Funktionen zur Verbindung mit dem Internet, den Vergleich der Versionen und das Herunterladen der Anwendung sind hier nur angedeutet (Sie werden später eine noch bessere Methode kennenlernen). Beachten Sie, dass Sie dieses Beispiel nicht mit ADL, sondern nur mit einer installierten Anwendung testen können, weil sonst keine Versionsnummer zur Verfügung steht:
    

    
private var thisVersion:String;
private var currentVersion:String;
private var newAppFile:File;
    private function init():void {
thisVersion = getInstalledVersion();
currentVersion = getCurrentVersionFromServer(); if(updateNecessary()) {
    downloadNewAppFile("myApplication-" + currentVersion + ".air");
var updater:Updater = new Updater();
updater.update(newAppFile, currentVersion); }
}
    private function getInstalledVersion():String { var versionString:String;
// Code zum Abruf der installierten Version return versionString;
    }
    private function getCurrentVersionFromServer():String { // Code zum Abruf der aktuellen Version vom Server
}
    private function updateNecessary():Boolean { var isNecessary:Boolean;
// Code zur Ermittlung, ob Aktualisierung notwendig return isNecessary;
    }
    private function downloadNewAppFile(filename:String):void { // Code zum Abruf der Anwendungsbeschreibungsdatei
}
]]>


    Listing 18.1 Beispiel: Anwendungsaktualisierung mit der Updater-Klasse
18.6 Update-Framework
    Wie Sie im letzten Abschnitt bereits andeutungsweise feststellen konnten, braucht es eine ganze Menge von Quelltext, bis Sie Ihre Anwendung so weit haben, dass sie sich selbst automatisch aktualisiert. Da aber die Aktualisierung »von innen heraus« ein wesentliches Komfortmerkmal heutiger Anwendungen ist (bei Rich-Internet- und Web 2.0-Anwendungen versteht sich das automatische Update systembedingt von selbst), wundert es nicht, dass dem AIR SDK mittlerweile eine Lösung beigefügt ist, die dies erheblich vereinfacht: das Update-Framework. Dies ist im AIR SDK als .swc-Datei (also einer Flash-Plattform-Komponente) mit dem Namen updateFramework.swc enthalten.
    Das Update-Framework für AIR-Anwendungen kann folgende Aufgaben erfüllen:
Prüfung auf verfügbare Updates in vom Entwickler festgelegten Abständen oder auf Benutzerinteraktion hin
    Herunterladen der Installationsdatei für eine neuere Version aus dem Internet Erkennen des ersten Aufrufs der Anwendung
Bestätigung des Benutzers zum automatischen Update einholen Informationen zur neuen Version anzeigen
Fortschritts- und Fehlerinformationen bei der Aktualisierung anzeigen
    Für die Aktualisierung Ihrer Anwendung stehen im Paket air.update die Klassen ApplicationUpdater und ApplicationUpdaterUI zur Verfügung. Beide Klassen verfügen über identische Funktionen im Zusammenhang mit dem Aktualisierungsvorgang selbst, die Klasse ApplicationUpdater verfügt jedoch im Gegensatz zur ApplicationUpdaterUI -Klasse nicht über eine Standard-Benutzeroberfläche.
18.6.1 Update-Framework serverseitig vorbereiten
    Um das Herunterladen der jeweils aktuellsten Version Ihrer Anwendung von Ihrem Server durch das Update-Framework zu ermöglichen, ist dieses auf Ihrem Server einerseits auf eine Konfigurationsdatei in einem bestimmten Format angewiesen, andererseits auf die Datei der aktualisierten Anwendung selbst. Das Update-Framework erwartet serverseitig eine Konfigurationsdatei im XML-Format, die einen aussagekräftigen Namen erhalten sollte, z. B. update-descriptor.xml. Innerhalb der serverseitigen XML-Konfigurationsdatei sollte als Wurzelelement ein -Tag vorhanden sein, das die Kindelemente (die Versionsnummer), (der absolute Pfad zum Anwendungs-Installationspaket) und (eine Beschreibung des Updates, das heißt die typischen Release Notes) enthält. Wenn Sie dann noch die .airDatei Ihrer aktualisierten Anwendung an die im -Element beschriebene Stelle legen, haben Sie schon alles erledigt, was serverseitig zu erledigen ist (außer vielleicht, dass Sie oder Ihr Serveradministrator dafür sorgen, dass die Datei auch erreichbar und abrufbar ist).
    Lösungsweg
Erstellen einer XML-Konfigurationsdatei update-descriptor.xml mit als
Vom Netzwerk:

Weitere Kostenlose Bücher