Вы должны посмотреть это руководство по управлению использованием сети.
Вы можете использовать NetworkInfo
для достижения того, что вы ищете:
NetworkInfo: описывает состояние сетевого интерфейса данного
тип (в настоящее время мобильный или Wi-Fi).
private static final String DEBUG_TAG = "NetworkStatusExample";
...
ConnectivityManager connMgr = (ConnectivityManager)
getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connMgr.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
boolean isWifiConn = networkInfo.isConnected();
networkInfo = connMgr.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
boolean isMobileConn = networkInfo.isConnected();
Log.d(DEBUG_TAG, "Wifi connected: " + isWifiConn);
Log.d(DEBUG_TAG, "Mobile connected: " + isMobileConn);
Если пользователь выбрал загрузку только через Wi-Fi, вы можете отклонить операцию, если используемая сеть не поддерживает Wi-Fi.