diff options
author | Vinit Deshpande <vinitd@google.com> | 2015-09-28 20:57:27 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2015-09-28 20:57:27 +0000 |
commit | b45816dc9458590766f7bc79b225e6a6184585bc (patch) | |
tree | 6390a1c2b8668aaf5b98999e31bb60ccb2fcca4b /service/java/com/android/server/wifi/WifiServiceImpl.java | |
parent | d2c4a206cbda822a1c1f575fa29975565e4a8ea3 (diff) | |
parent | 98e43e5f48a4c87343fc311feda4fa5489948822 (diff) | |
download | android_frameworks_opt_net_wifi-b45816dc9458590766f7bc79b225e6a6184585bc.tar.gz android_frameworks_opt_net_wifi-b45816dc9458590766f7bc79b225e6a6184585bc.tar.bz2 android_frameworks_opt_net_wifi-b45816dc9458590766f7bc79b225e6a6184585bc.zip |
am 98e43e5f: Don\'t reset country code on mobile signal loss
* commit '98e43e5f48a4c87343fc311feda4fa5489948822':
Don't reset country code on mobile signal loss
Diffstat (limited to 'service/java/com/android/server/wifi/WifiServiceImpl.java')
-rw-r--r-- | service/java/com/android/server/wifi/WifiServiceImpl.java | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/service/java/com/android/server/wifi/WifiServiceImpl.java b/service/java/com/android/server/wifi/WifiServiceImpl.java index 269000fea..2b83b6884 100644 --- a/service/java/com/android/server/wifi/WifiServiceImpl.java +++ b/service/java/com/android/server/wifi/WifiServiceImpl.java @@ -69,6 +69,7 @@ import android.util.Slog; import com.android.internal.R; import com.android.internal.app.IBatteryStats; +import com.android.internal.telephony.IccCardConstants; import com.android.internal.telephony.TelephonyIntents; import com.android.internal.util.AsyncChannel; import com.android.server.am.BatteryStatsService; @@ -358,10 +359,27 @@ public final class WifiServiceImpl extends IWifiManager.Stub { if (mSettingsStore.handleAirplaneModeToggled()) { mWifiController.sendMessage(CMD_AIRPLANE_TOGGLED); } + if (mSettingsStore.isAirplaneModeOn()) { + Log.d(TAG, "resetting country code because Airplane mode is ON"); + mWifiStateMachine.resetCountryCode(); + } } }, new IntentFilter(Intent.ACTION_AIRPLANE_MODE_CHANGED)); + mContext.registerReceiver( + new BroadcastReceiver() { + @Override + public void onReceive(Context context, Intent intent) { + String state = intent.getStringExtra(IccCardConstants.INTENT_KEY_ICC_STATE); + if (state.equals(IccCardConstants.INTENT_VALUE_ICC_ABSENT)) { + Log.d(TAG, "resetting country code because SIM is removed"); + mWifiStateMachine.resetCountryCode(); + } + } + }, + new IntentFilter(TelephonyIntents.ACTION_SIM_STATE_CHANGED)); + // Adding optimizations of only receiving broadcasts when wifi is enabled // can result in race conditions when apps toggle wifi in the background // without active user involvement. Always receive broadcasts. |