Merge "Update networktype before sending state change." into gingerbread
This commit is contained in:
committed by
Android (Google) Code Review
commit
89a544088f
@@ -149,6 +149,11 @@ public class MobileDataStateTracker extends NetworkStateTracker {
|
||||
ConnectivityManager mConnectivityManager;
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
synchronized(this) {
|
||||
// update state and roaming before we set the state - only state changes are
|
||||
// noticed
|
||||
TelephonyManager tm = TelephonyManager.getDefault();
|
||||
setRoamingStatus(tm.isNetworkRoaming());
|
||||
setSubtype(tm.getNetworkType(), tm.getNetworkTypeName());
|
||||
if (intent.getAction().equals(TelephonyIntents.
|
||||
ACTION_ANY_DATA_CONNECTION_STATE_CHANGED)) {
|
||||
Phone.DataState state = getMobileDataState(intent);
|
||||
@@ -254,9 +259,6 @@ public class MobileDataStateTracker extends NetworkStateTracker {
|
||||
reason == null ? "" : "(" + reason + ")");
|
||||
setDetailedState(DetailedState.FAILED, reason, apnName);
|
||||
}
|
||||
TelephonyManager tm = TelephonyManager.getDefault();
|
||||
setRoamingStatus(tm.isNetworkRoaming());
|
||||
setSubtype(tm.getNetworkType(), tm.getNetworkTypeName());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -302,7 +302,7 @@ public abstract class NetworkStateTracker extends Handler {
|
||||
public boolean isTeardownRequested() {
|
||||
return mTeardownRequested;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Send a notification that the results of a scan for network access
|
||||
* points has completed, and results are available.
|
||||
@@ -327,10 +327,10 @@ public abstract class NetworkStateTracker extends Handler {
|
||||
}
|
||||
|
||||
protected void setSubtype(int subtype, String subtypeName) {
|
||||
if (mNetworkInfo.isConnected()) {
|
||||
int oldSubtype = mNetworkInfo.getSubtype();
|
||||
if (subtype != oldSubtype) {
|
||||
mNetworkInfo.setSubtype(subtype, subtypeName);
|
||||
int oldSubtype = mNetworkInfo.getSubtype();
|
||||
if (subtype != oldSubtype) {
|
||||
mNetworkInfo.setSubtype(subtype, subtypeName);
|
||||
if (mNetworkInfo.isConnected()) {
|
||||
Message msg = mTarget.obtainMessage(
|
||||
EVENT_NETWORK_SUBTYPE_CHANGED, oldSubtype, 0, mNetworkInfo);
|
||||
msg.sendToTarget();
|
||||
|
||||
Reference in New Issue
Block a user