我有什么方法可以开发一个只能连接到学院WLAN的应用程序,应该限制应用程序使用移动数据和其他无线网络。
答案 0 :(得分:1)
您的意思是只能通过大学WLAN访问数据的应用吗?然后是的
如果您指的是限制用户手机连接到任何其他互联网来源的应用,则为NO。
用户在决定使用手机做什么时拥有最强大的权力,apps requires permission from users
如果是案例1,您可以尝试检查它是使用WIFI还是数据:
public static String checkNetworkStatus(final Context context) {
String networkStatus = "";
// Get connect mangaer
final ConnectivityManager connMgr = (ConnectivityManager)
context.getSystemService(Context.CONNECTIVITY_SERVICE);
// check for wifi
final android.net.NetworkInfo wifi = connMgr.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
// check for mobile data
final android.net.NetworkInfo mobile = connMgr.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
if( wifi.isAvailable() ) {
networkStatus = "wifi";
} else if( mobile.isAvailable() ) {
networkStatus = "mobileData";
} else {
networkStatus = "noNetwork";
}
return networkStatus;
} // end checkNetworkStatus
然后获取wifi名称,并将其与您的大学wifi名称进行比较:
public String getWifiName(Context context) {
WifiManager manager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
if (manager.isWifiEnabled()) {
WifiInfo wifiInfo = manager.getConnectionInfo();
if (wifiInfo != null) {
DetailedState state = WifiInfo.getDetailedStateOf(wifiInfo.getSupplicantState());
if (state == DetailedState.CONNECTED || state == DetailedState.OBTAINING_IPADDR) {
return wifiInfo.getSSID();
}
}
}
return null;
}
快乐编码