Merge "Re-remove CONNECTIVITY_CHANGE_DELAY and supporting functions." into lmp-mr1-dev
This commit is contained in:
@@ -101,7 +101,7 @@ public class ConnectivityManager {
|
||||
|
||||
/**
|
||||
* Identical to {@link #CONNECTIVITY_ACTION} broadcast, but sent without any
|
||||
* applicable {@link Settings.Global#CONNECTIVITY_CHANGE_DELAY}.
|
||||
* historic {@link Settings.Global#CONNECTIVITY_CHANGE_DELAY}.
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
@@ -428,18 +428,6 @@ public class ConnectivityManager {
|
||||
@Deprecated
|
||||
public static final int DEFAULT_NETWORK_PREFERENCE = TYPE_WIFI;
|
||||
|
||||
/**
|
||||
* Default value for {@link Settings.Global#CONNECTIVITY_CHANGE_DELAY} in
|
||||
* milliseconds. This was introduced because IPv6 routes seem to take a
|
||||
* moment to settle - trying network activity before the routes are adjusted
|
||||
* can lead to packets using the wrong interface or having the wrong IP address.
|
||||
* This delay is a bit crude, but in the future hopefully we will have kernel
|
||||
* notifications letting us know when it's safe to use the new network.
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
public static final int CONNECTIVITY_CHANGE_DELAY_DEFAULT = 3000;
|
||||
|
||||
/**
|
||||
* @hide
|
||||
*/
|
||||
|
||||
@@ -782,17 +782,6 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
||||
throw new IllegalStateException("No free netIds");
|
||||
}
|
||||
|
||||
private int getConnectivityChangeDelay() {
|
||||
final ContentResolver cr = mContext.getContentResolver();
|
||||
|
||||
/** Check system properties for the default value then use secure settings value, if any. */
|
||||
int defaultDelay = SystemProperties.getInt(
|
||||
"conn." + Settings.Global.CONNECTIVITY_CHANGE_DELAY,
|
||||
ConnectivityManager.CONNECTIVITY_CHANGE_DELAY_DEFAULT);
|
||||
return Settings.Global.getInt(cr, Settings.Global.CONNECTIVITY_CHANGE_DELAY,
|
||||
defaultDelay);
|
||||
}
|
||||
|
||||
private boolean teardown(NetworkStateTracker netTracker) {
|
||||
if (netTracker.teardown()) {
|
||||
netTracker.setTeardownRequested(true);
|
||||
@@ -1454,11 +1443,6 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
||||
sendGeneralBroadcast(info, CONNECTIVITY_ACTION);
|
||||
}
|
||||
|
||||
private void sendConnectedBroadcastDelayed(NetworkInfo info, int delayMs) {
|
||||
sendGeneralBroadcast(info, CONNECTIVITY_ACTION_IMMEDIATE);
|
||||
sendGeneralBroadcastDelayed(info, CONNECTIVITY_ACTION, delayMs);
|
||||
}
|
||||
|
||||
private void sendInetConditionBroadcast(NetworkInfo info) {
|
||||
sendGeneralBroadcast(info, ConnectivityManager.INET_CONDITION_ACTION);
|
||||
}
|
||||
@@ -1490,10 +1474,6 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
||||
sendStickyBroadcast(makeGeneralIntent(info, bcastType));
|
||||
}
|
||||
|
||||
private void sendGeneralBroadcastDelayed(NetworkInfo info, String bcastType, int delayMs) {
|
||||
sendStickyBroadcastDelayed(makeGeneralIntent(info, bcastType), delayMs);
|
||||
}
|
||||
|
||||
private void sendDataActivityBroadcast(int deviceType, boolean active, long tsNanos) {
|
||||
Intent intent = new Intent(ConnectivityManager.ACTION_DATA_ACTIVITY_CHANGE);
|
||||
intent.putExtra(ConnectivityManager.EXTRA_DEVICE_TYPE, deviceType);
|
||||
@@ -1538,19 +1518,6 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
||||
}
|
||||
}
|
||||
|
||||
private void sendStickyBroadcastDelayed(Intent intent, int delayMs) {
|
||||
if (delayMs <= 0) {
|
||||
sendStickyBroadcast(intent);
|
||||
} else {
|
||||
if (VDBG) {
|
||||
log("sendStickyBroadcastDelayed: delayMs=" + delayMs + ", action="
|
||||
+ intent.getAction());
|
||||
}
|
||||
mHandler.sendMessageDelayed(mHandler.obtainMessage(
|
||||
EVENT_SEND_STICKY_BROADCAST_INTENT, intent), delayMs);
|
||||
}
|
||||
}
|
||||
|
||||
void systemReady() {
|
||||
// start network sampling ..
|
||||
Intent intent = new Intent(ACTION_PKT_CNT_SAMPLE_INTERVAL_ELAPSED);
|
||||
@@ -4331,7 +4298,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
||||
info.setType(type);
|
||||
if (connected) {
|
||||
info.setDetailedState(DetailedState.CONNECTED, null, info.getExtraInfo());
|
||||
sendConnectedBroadcastDelayed(info, getConnectivityChangeDelay());
|
||||
sendConnectedBroadcast(info);
|
||||
} else {
|
||||
info.setDetailedState(DetailedState.DISCONNECTED, null, info.getExtraInfo());
|
||||
Intent intent = new Intent(ConnectivityManager.CONNECTIVITY_ACTION);
|
||||
@@ -4362,10 +4329,9 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
||||
final Intent immediateIntent = new Intent(intent);
|
||||
immediateIntent.setAction(CONNECTIVITY_ACTION_IMMEDIATE);
|
||||
sendStickyBroadcast(immediateIntent);
|
||||
sendStickyBroadcastDelayed(intent, getConnectivityChangeDelay());
|
||||
sendStickyBroadcast(intent);
|
||||
if (newDefaultAgent != null) {
|
||||
sendConnectedBroadcastDelayed(newDefaultAgent.networkInfo,
|
||||
getConnectivityChangeDelay());
|
||||
sendConnectedBroadcast(newDefaultAgent.networkInfo);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user