2012-08-29 222 views
0

我想检测我的网络应用程序的网络断开连接。如何检查Flash网络应用程序中的网络连接?

对于AIR应用程序,可以使用AIR URLMonitor。 而在Flash AS3中,我正在使用javascript的

'navigator.onLine'using ExternalInterface。

但上面的代码并不总是工作。

我是否必须编写自己的代码来持续检查我的网络连接是否持久?

回答

2

您需要创建一个URLLoader,并在计时器节拍上查找来自您网站的响应。

var checkTimer:Timer = new Timer(1000); 
var checkLoader:URLLoader = new URLLoader(); 
var checkURL:URLRequest = new URLRequest("mysite"); 
checkLoader.addEventListener(IOErrorEvent.IO_ERROR, onIOError); 

checkTimer.addEventListener(TimerEvent.TIMER, checkURL); 
checkTimer.start(); 

function checkURL(e:TimerEvent):void 
{ 
    checkLoader.load(checkURL); 
} 

function onIOError(e:IOErrorEvent):void 
{ 
    //down 
} 

这与URLMonitor的行为基本相同。

+0

谢谢科迪亚克。我工作,但唯一的问题是,当连接设置时,我无法收到Complete,HTTPStatus或任何其他甚至连接的连接。我在其他地方搜索过,但我认为我必须依靠:IOErrorEvent,因为它在连接互联网时完全停止。 – Sris