梦星痕

--记录生活与工作中的点点滴滴
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

【收集】AIR 取本机网卡地址及IP地址的方法

Posted on 2013-04-25 17:25  梦星痕  阅读(148)  评论(0)    收藏  举报

运行环境air

这里是直接获取本机第一个网卡的ip地址代码;

import flash.net.NetworkInfo;
import flash.net.NetworkInterface;
var netinfo:NetworkInfo=NetworkInfo.networkInfo
var interfaces:Vector.<NetworkInterface>=netinfo.findInterfaces();
if(interfaces!=null){
    trace("MAC地址:"+interfaces[0].hardwareAddress)
    trace("本机IP地址:"+interfaces[0].addresses[0].address)
}

下面是官方例子,显示出本机所有的网络物理信息.

package { 
import flash.display.Sprite; 
import flash.net.InterfaceAddress; 
import flash.net.NetworkInfo; 
import flash.net.NetworkInterface; 
 
public class GetAddress extends Sprite 
{ 
    public function GetAddress()
    { 
        var networkInfo:NetworkInfo = NetworkInfo.networkInfo; 
        var interfaces:Vector.<NetworkInterface> = networkInfo.findInterfaces(); 
         
        if( interfaces != null ) 
        { 
            trace( "Interface count: " + interfaces.length ); 
            for each ( var interfaceObj:NetworkInterface in interfaces ) 
            { 
                trace( "\nname: "             + interfaceObj.name ); 
                trace( "display name: "     + interfaceObj.displayName ); 
                trace( "mtu: "                 + interfaceObj.mtu ); 
                trace( "active?: "             + interfaceObj.active ); 
                trace( "parent interface: " + interfaceObj.parent ); 
                trace( "hardware address: " + interfaceObj.hardwareAddress ); 
                if( interfaceObj.subInterfaces != null ) 
                { 
                    trace( "# subinterfaces: " + interfaceObj.subInterfaces.length ); 
                } 
                trace("# addresses: "     + interfaceObj.addresses.length ); 
                for each ( var address:InterfaceAddress in interfaceObj.addresses ) 
                { 
                    trace( "  type: "           + address.ipVersion ); 
                    trace( "  address: "         + address.address ); 
                    trace( "  broadcast: "         + address.broadcast ); 
                    trace( "  prefix length: "     + address.prefixLength ); 
                } 
            }             
        } 
    }     
}