Wi-Fi可用性检查后台进程android

时间:2012-12-06 11:50:34

标签: android bluetooth notifications background-process bluetooth-lowenergy

我正在使用无线活动开发应用程序。我必须使用WLAN(无线局域网)处理互联网,我的蓝牙活动需要一直工作。

在这里,有时我的wi-fi /蓝牙设备出现了覆盖范围外的问题。我已经解决了这方面的知识,在提交过程中我开始知道互联网不可用..

我需要在应用程序中处理时每次更新数据。如果我的程序或应用程序中嵌入了Wi-Fi /蓝牙Streangth通知,那么我可以知道,如果Wi-Fi /蓝牙电流变低了。

帮我解决这个问题。谢谢..

2 个答案:

答案 0 :(得分:3)

我想您正在询问如何检查您的WiFi是否已连接,如果是,您可以使用ConnectivityManager

ConnectivityManager conman = (ConnectivityManager)
     getSystemService(CONNECTIVITY_SERVICE);
NetworkInfo wifi = conman.getNetworkInfo(ConnectivityManager.TYPE_WIFI);

if(wifi.isConnected()) {
   // yay! your connected
}

现在,要让上面的代码在后台运行,您可以在后台运行的服务中实现上述功能并与您的活动进行通信。在这里查看一个示例,以帮助您开始使用后台服务。

http://android-codes-examples.blogspot.co.uk/2011/11/running-service-in-background-on.html

在服务中,您需要以下列方式获取ConnectivityManager,因为您需要先获取应用程序上下文

ConnectivityManager conman = (ConnectivityManager)
     getApplicationContext().getgetSystemService(CONNECTIVITY_SERVICE);

答案 1 :(得分:0)

通过@JustDanyul说你可以简单地修改它,以便它总是通过使用while循环而不是if语句来检查其连接性,这样当你连接到互联网时你的应用程序做了一件事然后当断开连接时别的什么