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

Adobe Air (wiwobooks.com Release)

Titel: Adobe Air (wiwobooks.com Release) Kostenlos Bücher Online Lesen
Autoren:
Vom Netzwerk:
abgeleitet ist. Sie übergeben dem Konstruktor zusätzlich zum zu prüfenden Host noch die Portnummer, die Sie prüfen möchten.
    Lösungsweg
    1. Erstellen einer SocketMonitor -Instanz. Konstruktorparameter: host
    Der voll qualifizierte Hostname (z. B. www.example.com) oder die IPAdresse als Zeichenkette
port
Die Portnummer als Ganzzahl, z. B. 25
2. Registrieren eines Ereignis-Listeners für StatusEvent.STATUS bei der SocketMonitor -Instanz
    3. Aufruf der Methode start() der SocketMonitor -Instanz
4. Abruf der Eigenschaft available der SocketMonitor -Instanz
5. Weiterer Quelltext zur Abarbeitung und Reaktion
    So geht es
Nachfolgend sehen Sie ein ähnliches Beispiel wie im letzten Abschnitt, diesmal jedoch unter Verwendung der Klass SocketMonitor :
    

    
import air.net.SocketMonitor;
// zu Testzwecken Port 80,
// der ist garantiert offen
private var myMonitor:SocketMonitor =
    new SocketMonitor("skiller.eu", 80);
private function init():void {
myMonitor.addEventListener(StatusEvent.STATUS, handleStatus);
myMonitor.start();
}
private function handleStatus(e:StatusEvent):void { taStatus.text += "aktueller Status: " + e.code.toString() + "\n";
    var bgColor:uint = myMonitor.available ? 0x009900 /* grün */ : 0x990000 /* rot */;
this.setStyle("backgroundColor", bgColor); }
]]>


    Listing 17.3 Beispiel: Socket-Verbindung prüfen
17.2 Auf entfernte Ressourcen zugreifen
    Schön und gut, wenn Sie feststellen können, ob eine Verbindung »nach draußen« besteht – interessant wird die Sache erst, wenn Sie von so einer Verbindung auch Gebrauch machen. Die häufigste Art des Zugriffs auf externe Ressourcen geschieht mithilfe des ubiquitären HTTP (Hypertext Transfer Protocol). Das heißt für eine AIR-Anwendung in der Regel, dass sich die Daten irgendwo im Internet befinden. Damit landen Sie automatisch in der Sicherheits-Sandbox remote der aufrufenden AIR-Anwendung und haben somit weder Zugriff auf die AIR API noch auf den Inhalt in den anderen Sandboxen. Allerdings hindert Sie nichts daran, mit den gleichen Methoden auch auf lokale Ressourcen zuzugreifen – AIR ist intelligent genug zu erkennen, in welcher Sicherheits-Sandbox sich der aufgerufene Inhalt tatsächlich befindet. Für Inhalte innerhalb des Zugriffsbereichs der Anwendung stellt AIR die Pseudoprotokolle app:/ (Anwendungsverzeichnis) und appstorage:/ (Anwendungs-Dokumentenverzeichnis) zur Verfügung.
17.2.1 Zugriffsbeschränkungen
    Abhängig von der Sicherheits-Sandbox, aus der ein Zugriff auf eine entfernte Ressource erfolgt, sind nicht alle Protokolle bzw. Pseudoprotokolle nutzbar. Grundsätzlich gilt, dass Inhalte, die sich im Anwendungsverzeichnis befinden, alle Möglichkeiten des Zugriffs haben. Inhalte der anderen Sicherheitsboxen haben desto weniger Zugriff auf andere Sicherheits-Sandboxen, je weiter sie sich »im Netz« befinden. Tabelle 17.1 bietet einen Überblick über die Zugriffsmöglichkeiten innerhalb der Sicherheits-Sandboxen.
    http: https: file: mailto: app: app–storage: Anwendungs-Sicherheits-Sand× × × × – × box
    Local Trusted × × × × – – Lokal mit Dateisystem – – × × – – Lokal mit Netzwerk × × – × – – Remote × × – × – –
    Tabelle 17.1 Zugriffseinschränkungen Sicherheits-Sandboxen/Protokolle
    Sie sehen, dass Sie aus der Anwendungs-SicherheitsSandbox heraus auf alle Protokolle zugreifen können, in der Sandbox »Lokal mit Dateisystem« jedoch nur auf die Protokolle file: und mailto: etc.
    Zugriff auf entfernte Inhalte
    Wenn Sie in einer AIR-Anwendung per ActionScript auf entfernte Inhalte zugreifen wollen, verwenden Sie die Klassen URLRequest und URLStream , deren Verwendung ganz ähnlich der der Klassen File und FileStream für lokale Ressourcen ist (de facto ist die Verwendung von File/FileStream an die von URLRequest/URLStream angelehnt).
17.2.2 URLRequest-Klasse
    Wenn Sie schon mit Flash und/oder Flex auf entfernte Ressourcen zugegriffen haben, ist die URLRequest -Klasse für Sie sicherlich eine alte Bekannte. Für AIR ist diese Klasse um einige wichtige Eigenschaften erweitert. Tabelle 17.2 gibt einen Überblick über die AIR-spezifischen Eigenschaften der URLRequest -Klasse.
    AIR-Eigenschaften

Weitere Kostenlose Bücher