2011-06-06 51 views
0

我的应用程序的一个主要需求是仅使用蜂窝网络连接。 如果检测到wifi连接,应用程序必须禁用wifi功能并通过cellualr网络连接进行连接。 如何做? 谢谢, Eyal。Android终止应用程序内的WiFi功能

回答

0

检查WIFI连接

您可以使用下面的代码来检查活动的网络(如果有的话 - 做一些null检查这里)的类型是WIFI的。

ConnectivityManager connManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 
NetworkInfo netInfo = connManager.getActiveNetworkInfo(); 
if (netInfo!=null) { 
    // detect type using netInfo.getType() 
} 

ConnectivityManager中有一个TYPE_WIFI int常量,可用于检查。 (getType返回一个int来标识网络类型)。

有关活动经理的更多信息可在Android dev site上找到。

禁用WIFI

n阶禁用无线网络状态,你有权授予在应用程序清单

android.permission.CHANGE_WIFI_STATE 

然后,您可以使用WifiManager设置启用以下权限/禁用无线上网。在http://developer.android.com/reference/android/net/wifi/WifiManager.html

WifiManager wifiManager = (WifiManager)getBaseContext().getSystemService(Context.WIFI_SERVICE); 
wifiManager.setWifiEnabled(false); 

更多信息的完整样本,请检查下面的帖子:http://android-er.blogspot.com/2011/01/turn-wifi-onoff-using.html