diff options
author | Roman Birg <roman@cyngn.com> | 2015-10-29 16:17:27 -0700 |
---|---|---|
committer | Roman Birg <roman@cyngn.com> | 2016-07-08 13:00:19 -0700 |
commit | 1fcc0ddc855c0ffbbf41b351d8f63bf13a3beaa1 (patch) | |
tree | 411fbb245cd4356a3d4a95f4de9e6494958d4f35 | |
parent | 886ac4242086620bb467ec5ec2a9e1c7102e7d2b (diff) | |
download | frameworks_opt_net_wifi-1fcc0ddc855c0ffbbf41b351d8f63bf13a3beaa1.tar.gz frameworks_opt_net_wifi-1fcc0ddc855c0ffbbf41b351d8f63bf13a3beaa1.tar.bz2 frameworks_opt_net_wifi-1fcc0ddc855c0ffbbf41b351d8f63bf13a3beaa1.zip |
wifi: don't disable AP on sub change if it's the same sub
Ticket: OSS BACON-4349, CYNGNOS-1303, CYNGNOS-877
Change-Id: I653fdf40b1419c96e8d611b18d8d899cb5629f5c
Signed-off-by: Roman Birg <roman@cyngn.com>
-rw-r--r-- | service/java/com/android/server/wifi/WifiController.java | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/service/java/com/android/server/wifi/WifiController.java b/service/java/com/android/server/wifi/WifiController.java index 71735f5..320db8d 100644 --- a/service/java/com/android/server/wifi/WifiController.java +++ b/service/java/com/android/server/wifi/WifiController.java @@ -36,6 +36,7 @@ import android.os.Message; import android.os.SystemClock; import android.os.WorkSource; import android.provider.Settings; +import android.telephony.SubscriptionInfo; import android.telephony.SubscriptionManager; import android.util.Slog; @@ -631,13 +632,27 @@ class WifiController extends StateMachine { public void enter() { mSubListener = new SubscriptionManager.OnSubscriptionsChangedListener() { boolean firstChange = true; + SubscriptionInfo lastSub; @Override public void onSubscriptionsChanged() { + final SubscriptionInfo currentSub = SubscriptionManager.from(mContext) + .getDefaultDataSubscriptionInfo(); if (firstChange) { + lastSub = currentSub; // we always get a state change on registration. firstChange = false; return; } + if (currentSub == null) { + // don't disable when we're not sure yet. + return; + } + if (lastSub != null && currentSub.getSubscriptionId() + == lastSub.getSubscriptionId()) { + // don't disable if it's the same subscription + return; + } + lastSub = currentSub; Toast.makeText(mContext, com.android.internal.R.string.subscription_change_disabled_wifi_ap, Toast.LENGTH_SHORT).show(); |