summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoman Birg <roman@cyngn.com>2015-10-29 16:17:27 -0700
committerRoman Birg <roman@cyngn.com>2016-07-08 13:00:19 -0700
commit1fcc0ddc855c0ffbbf41b351d8f63bf13a3beaa1 (patch)
tree411fbb245cd4356a3d4a95f4de9e6494958d4f35
parent886ac4242086620bb467ec5ec2a9e1c7102e7d2b (diff)
downloadframeworks_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.java15
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();