Eine Möglichkeit zu haben, eine ActionScript-3 (Flex/AIR) Projekt-print auf der standard-Ausgabe?

StackOverflow https://stackoverflow.com/questions/38651

Frage

Gibt es eine Möglichkeit zu haben, eine binäre zusammengestellt von einem ActionScript 3-Projekt drucken Zeug stdout wenn Sie ausgeführt?

Von dem, was ich gesammelt habe, die Menschen haben zu gehen, um diese Einschränkung durch das schreiben von hacks, die verlassen sich auf lokale socket-verbindungen und AIR-apps, die schreiben in Dateien in das lokale Dateisystem, aber das ist ziemlich viel-es ist offensichtlich nicht möglich mit die Flash Player-und AIR-Laufzeitumgebungen von Adobe.

Gibt es irgendein Projekt (z.B.basierend auf den Tamarin code), die versucht, etwas umzusetzen, das diese Art von Funktionalität?

War es hilfreich?

Lösung

Mit AIR auf Linux, es ist einfach zu schreiben auf stdout aus, da der Prozess kann seine eigenen Datei-Deskriptoren, die als Dateien in /dev.

Für stdout open /dev/fd/1 oder /dev/stdout als FileStream, dann schreiben.

Beispiel:

var stdout : FileStream = new FileStream();
stdout.open(new File("/dev/fd/1"), FileMode.WRITE);
stdout.writeUTFBytes("test\n");
stdout.close();

Hinweis: Finden diese Antwort für die Differenz zwischen writeUTF() und writeUTFBytes() - die letztere vermeiden Sie eine fehlerhafte Ausgabe auf stdout.

Andere Tipps

Wie Sie sagen, es gibt keine Adobe-erstellt Möglichkeit, dies zu tun, aber haben Sie vielleicht mehr Glück mit Zink, ist es ähnlich wie an der LUFT, sondern bietet Echtzeit OS-integration von Flash-basierten Anwendungen.Schauen obwohl die API docs, es sollte etwas dabei sein.

Wenn Sie eine debug Flash Player können Sie Flash-Player-log-trace-Meldungen in einer Datei auf Ihrem system.

Wenn Sie möchten, Echtzeit-Nachrichten, dann könntest du Schwanz die Datei.

Mehr info:

http://blog.flexexamples.com/2007/08/26/debugging-flex-applications-with-mmcfg-and-flashlogtxt/

mike Kammern

mesh@adobe.com

Redtamarin scheint in der Lage sein, dies zu tun (obwohl es immer noch in den Kinderschuhen):

Inhalt test.as:

import avmplus.System;
import redtamarin.version;

trace( "hello world" );
trace( "avmplus v" + System.getAvmplusVersion() );
trace( "redtamarin v" + redtamarin.version );

Auf der Kommandozeile:

$ ./buildEXE.sh test.as 

test.abc, 243 bytes written
test.exe, 2191963 bytes written

test.abc, 243 bytes written
test.exe, 2178811 bytes written

$ ./test
hello world
avmplus v1.0 cyclone (redshell)
redtamarin v0.1.0.92
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top