6 Stimmen

Flex: Herausfinden, wann die laufende swf kompiliert wurde?

Gibt es eine Möglichkeit, in einer Flex-Anwendung herauszufinden (zur Laufzeit), wann die laufende swf kompiliert wurde?

Ich möchte dies mit der neuesten Dateiversion der SWF-Datei auf dem Server vergleichen und erkennen, ob es eine neuere Version auf dem Server gibt, und wenn ja, den Benutzer zwingen, seinen Browser neu zu laden, um die neue Version zu erhalten.

Dies muss auch mit Swfs aus dem Cache funktionieren.

6voto

grapefrukt Punkte 26942

Normalerweise verwende ich ein serverseitiges Skript, um sicherzustellen, dass der Benutzer die neueste Version einer Flash-Datei erhält (weil es etwas Seltsames mit der Zwischenspeicherung von Flash-Inhalten gibt), um den Zeitpunkt der Änderung der Datei anzuhängen.

Ich habe auch mit dem Setzen von Variablen in der swf experimentiert, obwohl das einige Kommandozeilentricks erfordert und nicht wirklich praktisch ist, wenn man kein Build-Skript verwendet.

Im Grunde hängen Sie dies an Ihren mxmlc-Aufruf an:

-define+=BUILD::DATE,"2008-12-10"

Dann wird die Variable BUILD::DATE während des Builds verfügbar sein, so dass Sie diese verwenden können, um eine statische Variable zu setzen, die Sie später lesen:

private static var COMPILEDATE:String = DATE;

(Ich habe das alles aus dem Gedächtnis geschrieben, so dass es syntaktisch vielleicht nicht 100% korrekt ist)

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X