这是我想做的:
尝试检查是否有互联网连接。如果没有互联网连接,我想激活一个显示“没有互联网连接”的面板。
我把面板拖到inspector那里。将此面板设置为活动的脚本位于层次结构中活动的游戏对象上。
代码如下:
public GameObject NoInternetConnectionPanel;
private void Start()
{
//Check Internet Connection
InvokeRepeating("CheckInternetConnection", 0f, 1f);
}
private void CheckInternetConnection()
{
var request = WebRequest.Create("http://google.com");
request.Method = "HEAD";
request.BeginGetResponse(result =>
{
try
{
using (var response = request.EndGetResponse(result) as HttpWebResponse)
{
if (response.StatusCode == HttpStatusCode.OK)
{
Debug.Log("Internet connection available");
}
/*else
{
Debug.Log("No internet connection");
}*/
}
}
catch (WebException ex)
{
Debug.Log("No internet connection");
NoInternetConnectionPanel.SetActive(true);
}
}, null);
StartCoroutine(WaitAndCheck());
}
private IEnumerator WaitAndCheck()
{
yield return new WaitForSeconds(1f);
}
控制台中显示调试日志消息“无互联网连接”。但是“NoInternetConnectionPanel.SetActive(true)”不起作用。
可能是什么问题?