package com.android.settings; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.net.ConnectivityManager; import android.net.wifi.WifiManager; import android.util.Log; import com.android.settingslib.TetherUtil; /** * This receiver catches when quick settings turns off the hotspot, so we can * cancel the alarm in that case. All other cancels are handled in tethersettings. */ public class HotspotOffReceiver extends BroadcastReceiver { private static final String TAG = "HotspotOffReceiver"; private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG); @Override public void onReceive(Context context, Intent intent) { if (WifiManager.WIFI_AP_STATE_CHANGED_ACTION.equals(intent.getAction())) { WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE); if (wifiManager.getWifiApState() == WifiManager.WIFI_AP_STATE_DISABLED) { if (DEBUG) Log.d(TAG, "TetherService.cancelRecheckAlarmIfNecessary called"); // The hotspot has been turned off, we don't need to recheck tethering. TetherService.cancelRecheckAlarmIfNecessary( context, ConnectivityManager.TETHERING_WIFI); } } } }