air:
要在 Adobe ® Flash ® Professional(CS4 或更高版本)中使用 air.net 包:
- 选择“文件”>“发布设置”命令。
- 在 Flash 面板中,单击 ActionScript 3.0 对应的“设置”按钮。选择“库路径”。
- 单击“浏览到 SWC 文件”按钮。浏览到 Adobe Flash Professional 安装文件夹中的 Adobe Flash CSn/AIKn.n/frameworks/libs/air/aircore.swc 文件。
- 单击“确定”按钮。
- 将下面的
import
语句添加到 ActionScript 3.0 代码中:import air.net.*;
- 建立文档类,并在舞台添加test_txt 动态文本框
package {
import flash.display.MovieClip;
import air.net.URLMonitor;
import flash.net.URLRequest;
import flash.events.StatusEvent;
public class Main extends MovieClip {
private var monitor:URLMonitor;
public function Main()
{
checkInterNet();
}
private function checkInterNet():void
{
monitor = new URLMonitor(new URLRequest("http://www.baidu.com"));
monitor.addEventListener(StatusEvent.STATUS, checkHTTP);
monitor.start();
}
private function checkHTTP(event:StatusEvent):void
{
if (monitor.available)
{
test_txt.text ="Internet is available";
}
else
{
test_txt.text ="No internet connection available";
}
}
}
}
非Air 方向,一般请求网络不成功的都会报IoError错误,如果没有的话,可以自己请求某服务器(如百度)不成功就视为无网络连接。
例:
package {
import flash.net.URLLoader;
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.net.URLRequest;
import flash.errors.IOError;
public class HttpRequest {
private var _urlLoad:URLLoader;
public function HttpRequest()
{
_urlLoad = new URLLoader();
_urlLoad.addEventListener(Event.COMPLETE,loadHandler);
_urlLoad.addEventListener(IOErrorEvent.IO_ERROR,loadHandler);
var urlRequst:URLRequest = new URLRequest("https://www.baidu.com/");
try
{
_urlLoad.load(urlRequst);
}
catch(event:IOError)
{
trace("io error");
}
}
private function loadHandler(event:Event):void
{
switch(event.type)
{
case Event.COMPLETE:
trace("complete::",_urlLoad.data);
break;
case IOErrorEvent.IO_ERROR:
trace(IOErrorEvent.IO_ERROR,"服务器连接错误!");
break;
}
}
}
}
可在文档类new 一个HttpRequest 实例,便可检测有无网络连接。