ConnectivityManager mConnectivity = null; TelephonyManager mTelephony = null; // Skip if no connection, or background data disabled NetworkInfo info = mConnectivity.getActiveNetworkInfo(); if (info == null || !mConnectivity.getBackgroundDataSetting()) { return false; } // Only update if WiFi or 3G is connected and not roaming int netType = info.getType(); int netSubtype = info.getSubtype(); if (netType == ConnectivityManager.TYPE_WIFI) { return info.isConnected(); } else if (netType == ConnectivityManager.TYPE_MOBILE && netSubtype == TelephonyManager.NETWORK_TYPE_UMTS && !mTelephony.isNetworkRoaming()) { return info.isConnected(); } else { return false; }
@Test public void shouldGetAndSetBackgroundDataSetting() throws Exception { assertThat(connectivityManager.getBackgroundDataSetting()).isFalse(); shadowOf(connectivityManager).setBackgroundDataSetting(true); assertThat(connectivityManager.getBackgroundDataSetting()).isTrue(); }
@SuppressWarnings("deprecation") @Override public void onReceive(Context context, Intent intent) { ConnectivityManager cm = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE); traceDebug(TAG,"Reconnect since BroadcastReceiver."); if (cm.getBackgroundDataSetting()) { if (!backgroundDataEnabled) { backgroundDataEnabled = true; // we have the Internet connection - have another try at // connecting reconnect(); } } else { backgroundDataEnabled = false; notifyClientsOffline(); } } }
@SuppressWarnings("deprecation") private void registerBroadcastReceivers() { if (networkConnectionMonitor == null) { networkConnectionMonitor = new NetworkConnectionIntentReceiver(); registerReceiver(networkConnectionMonitor, new IntentFilter( ConnectivityManager.CONNECTIVITY_ACTION)); } if (Build.VERSION.SDK_INT < 14 /**Build.VERSION_CODES.ICE_CREAM_SANDWICH**/) { // Support the old system for background data preferences ConnectivityManager cm = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE); backgroundDataEnabled = cm.getBackgroundDataSetting(); if (backgroundDataPreferenceMonitor == null) { backgroundDataPreferenceMonitor = new BackgroundDataPreferenceReceiver(); registerReceiver( backgroundDataPreferenceMonitor, new IntentFilter( ConnectivityManager.ACTION_BACKGROUND_DATA_SETTING_CHANGED)); } } }
ConnectivityManager mgr = (ConnectivityManager)Context.getSystemService(Context.CONNECTIVITY_SERVICE); boolean bgData = mgr.getBackgroundDataSetting();
ConnectivityManager connectivityManager =(ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo info = connectivityManager.getActiveNetworkInfo(); if (info == null || !connectivityManager.getBackgroundDataSetting()) { // No Network detected //return; }
ConnectivityManager conn; conn=(ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); // Skip if no connection, or background data disabled NetworkInfo info = conn.getActiveNetworkInfo(); if (info == null || !conn.getBackgroundDataSetting()) { // No Network detected return; } else { int netType = info.getType(); int netSubtype = info.getSubtype(); if (netType == ConnectivityManager.TYPE_WIFI) { //WIFI DETECTED } else if (netType == ConnectivityManager.TYPE_MOBILE && netSubtype >2) { //Mobile connected that is at least 3G } else { //Has connection but i'm not sure what kind } }
/** * 检查是否有可用网络 */ public static boolean isNetworkConnected() { ConnectivityManager manager = (ConnectivityManager) App.getInstance().getSystemService(CONNECTIVITY_SERVICE); // 检查网络连接,如果无网络可用,就不需要进行连网操作等 NetworkInfo info = manager.getActiveNetworkInfo(); if (info == null || !manager.getBackgroundDataSetting()) { return false; } return true; } }
ConnectivityManager mConnectivity = null; TelephonyManager mTelephony = null; // Skip if no connection, or background data disabled NetworkInfo info = mConnectivity.getActiveNetworkInfo(); if (info == null || !mConnectivity.getBackgroundDataSetting()) { return false; } // Only update if WiFi or 3G is connected and not roaming int netType = info.getType(); int netSubtype = info.getSubtype(); if (netType == ConnectivityManager.TYPE_WIFI) { return info.isConnected(); } else if (netType == ConnectivityManager.TYPE_MOBILE && netSubtype == TelephonyManager.NETWORK_TYPE_UMTS && !mTelephony.isNetworkRoaming()) { return info.isConnected(); } else { return false; }
public static boolean isUsingWifi () { ConnectivityManager mConnectivity; if (ClientProperties.getApplicationContext() != null) { mConnectivity = (ConnectivityManager)ClientProperties.getApplicationContext().getSystemService(Context.CONNECTIVITY_SERVICE); if (mConnectivity == null) { return false; } TelephonyManager mTelephony; mTelephony = (TelephonyManager)ClientProperties.getApplicationContext().getSystemService(Context.TELEPHONY_SERVICE); // Skip if no connection, or background data disabled NetworkInfo info = mConnectivity.getActiveNetworkInfo(); if (info == null || !mConnectivity.getBackgroundDataSetting() || !mConnectivity.getActiveNetworkInfo().isConnected() || mTelephony == null) { return false; } int netType = info.getType(); return netType == ConnectivityManager.TYPE_WIFI && info.isConnected(); } return false; }
private final BroadcastReceiver mIntentReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { // Handle receiver ConnectivityManager mConnectivity; mConnectivity = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo info = mConnectivity.getActiveNetworkInfo(); if (info == null || !mConnectivity.getBackgroundDataSetting()) { //CHANGE YOUR BUTTON HERE BECAUSE THERE IS NO NETWORK AT ALL return; } else { int netType = info.getType(); int netSubtype = info.getSubtype(); if (netType == ConnectivityManager.TYPE_WIFI) { //CHANGE YOUR BUTTON HERE BECAUSE THERE IS WIFI } else { //CHANGE YOUR BUTTON HERE BECAUSE THERE IS NETWORK BUT ITS NOT WIFI } } } };
!connectivityManager.getBackgroundDataSetting()) {
if (!cm.getBackgroundDataSetting()) { stopSelf(); return;
@SuppressWarnings("deprecation") @Override public void onReceive(Context context, Intent intent) { ConnectivityManager cm = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE); traceDebug(TAG,"Reconnect since BroadcastReceiver."); if (cm.getBackgroundDataSetting()) { if (!backgroundDataEnabled) { backgroundDataEnabled = true; // we have the Internet connection - have another try at // connecting reconnect(); } } else { backgroundDataEnabled = false; notifyClientsOffline(); } } }
@SuppressWarnings("deprecation") private void registerBroadcastReceivers() { if (networkConnectionMonitor == null) { networkConnectionMonitor = new NetworkConnectionIntentReceiver(); registerReceiver(networkConnectionMonitor, new IntentFilter( ConnectivityManager.CONNECTIVITY_ACTION)); } if (Build.VERSION.SDK_INT < 14 /**Build.VERSION_CODES.ICE_CREAM_SANDWICH**/) { // Support the old system for background data preferences ConnectivityManager cm = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE); backgroundDataEnabled = cm.getBackgroundDataSetting(); if (backgroundDataPreferenceMonitor == null) { backgroundDataPreferenceMonitor = new BackgroundDataPreferenceReceiver(); registerReceiver( backgroundDataPreferenceMonitor, new IntentFilter( ConnectivityManager.ACTION_BACKGROUND_DATA_SETTING_CHANGED)); } } }
@SuppressWarnings("deprecation") @Override public void onReceive(Context context, Intent intent) { ConnectivityManager cm = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE); traceDebug(TAG,"Reconnect since BroadcastReceiver."); if (cm.getBackgroundDataSetting()) { if (!backgroundDataEnabled) { backgroundDataEnabled = true; // we have the Internet connection - have another try at // connecting reconnect(); } } else { backgroundDataEnabled = false; notifyClientsOffline(); } } }
@SuppressWarnings("deprecation") private void registerBroadcastReceivers() { if (networkConnectionMonitor == null) { networkConnectionMonitor = new NetworkConnectionIntentReceiver(); registerReceiver(networkConnectionMonitor, new IntentFilter( ConnectivityManager.CONNECTIVITY_ACTION)); } if (Build.VERSION.SDK_INT < 14 /**Build.VERSION_CODES.ICE_CREAM_SANDWICH**/) { // Support the old system for background data preferences ConnectivityManager cm = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE); backgroundDataEnabled = cm.getBackgroundDataSetting(); if (backgroundDataPreferenceMonitor == null) { backgroundDataPreferenceMonitor = new BackgroundDataPreferenceReceiver(); registerReceiver( backgroundDataPreferenceMonitor, new IntentFilter( ConnectivityManager.ACTION_BACKGROUND_DATA_SETTING_CHANGED)); } } }
@Test public void testWifiEnabled () { ConnectivityManager mConnectivity; boolean isWifi = false; mConnectivity = (ConnectivityManager) InstrumentationRegistry.getTargetContext().getSystemService(Context.CONNECTIVITY_SERVICE); TelephonyManager mTelephony; mTelephony = (TelephonyManager)InstrumentationRegistry.getTargetContext().getSystemService(Context.TELEPHONY_SERVICE); // Skip if no connection, or background data disabled if (mConnectivity != null) { NetworkInfo info = mConnectivity.getActiveNetworkInfo(); int netType = info.getType(); if (netType == ConnectivityManager.TYPE_WIFI && info.isConnected()) { isWifi = true; } if (!mConnectivity.getBackgroundDataSetting() || !mConnectivity.getActiveNetworkInfo().isConnected() || mTelephony == null) { isWifi = false; } } assertTrue("Device doesn't have WiFi", isWifi); }