▼Adobe AIRメモ▼
ネットワーク接続のモニタリング


ネットワーク接続のモニタリングを行うプログラムを作成する。


ソースコード
NetworkMonitorEx.as
package {
    import flash.desktop.*;
    import flash.display.*;  
    import flash.events.*;
    import flash.net.*;
    import flash.system.*;
    import flash.text.*;  
    import air.net.*;

    //ネットワーク接続のモニタリング
    public class NetworkMonitorEx extends Sprite {
        private var textField:TextField;        //テキストフィールド
        private var urlMonitor:URLMonitor;      //URLモニター
        private var socketMonitor:SocketMonitor;//ソケットモニター
        
        //コンストラクタ
        public function NetworkMonitorEx() {
            //テキストフィールドの生成
            textField=new TextField();
            textField.text="NetworkMonitorEx\n\n";
            textField.autoSize=TextFieldAutoSize.LEFT;
            addChild(textField);
            
            //ネットワーク変更イベントの追加
            NativeApplication.nativeApplication.addEventListener(
                Event.NETWORK_CHANGE,onNetworkChange);
                
            //URLモニター の生成           
            urlMonitor=new URLMonitor(new URLRequest("http://npaka.net/"));
            urlMonitor.addEventListener(
                StatusEvent.STATUS,onURLStatus);
            urlMonitor.start();
            
            //ソケットモニターの生成
            socketMonitor=new SocketMonitor("npaka.net",80);
            socketMonitor.addEventListener(
                StatusEvent.STATUS,onSocketStatus);
            socketMonitor.start();           
        }
        
        //ネットワーク変更イベントの処理
        private function onNetworkChange(event:Event):void {
            textField.appendText("ネットワーク変更\n");
        }
        
        //URLモニターイベントの処理
        private function onURLStatus(event:StatusEvent):void {
            textField.appendText("URLモニター:"+urlMonitor.available+"\n");
        } 
        
        //ソケットモニターイベントの処理
        private function onSocketStatus(event:StatusEvent):void {
            textField.appendText("ソケットモニター:"+socketMonitor.available+"\n");
        }                
    }
}


−戻る−