Merge "Handle AsyncChannel disconnect in WifiService" into honeycomb-LTE
This commit is contained in:
committed by
Android (Google) Code Review
commit
b400184ad6
@@ -235,6 +235,15 @@ public class WifiService extends IWifiManager.Stub {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case AsyncChannel.CMD_CHANNEL_DISCONNECTED: {
|
||||||
|
if (msg.arg1 == AsyncChannel.STATUS_SEND_UNSUCCESSFUL) {
|
||||||
|
Slog.d(TAG, "Send failed, client connection lost");
|
||||||
|
} else {
|
||||||
|
Slog.d(TAG, "Client connection lost with reason: " + msg.arg1);
|
||||||
|
}
|
||||||
|
mClients.remove((AsyncChannel) msg.obj);
|
||||||
|
break;
|
||||||
|
}
|
||||||
case AsyncChannel.CMD_CHANNEL_FULL_CONNECTION: {
|
case AsyncChannel.CMD_CHANNEL_FULL_CONNECTION: {
|
||||||
AsyncChannel ac = new AsyncChannel();
|
AsyncChannel ac = new AsyncChannel();
|
||||||
ac.connect(mContext, this, msg.replyTo);
|
ac.connect(mContext, this, msg.replyTo);
|
||||||
@@ -312,6 +321,13 @@ public class WifiService extends IWifiManager.Stub {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case AsyncChannel.CMD_CHANNEL_DISCONNECTED: {
|
||||||
|
Slog.e(TAG, "WifiStateMachine channel lost, msg.arg1 =" + msg.arg1);
|
||||||
|
mWifiStateMachineChannel = null;
|
||||||
|
//Re-establish connection to state machine
|
||||||
|
mWsmChannel.connect(mContext, this, mWifiStateMachine.getHandler());
|
||||||
|
break;
|
||||||
|
}
|
||||||
default: {
|
default: {
|
||||||
Slog.d(TAG, "WifiStateMachineHandler.handleMessage ignoring msg=" + msg);
|
Slog.d(TAG, "WifiStateMachineHandler.handleMessage ignoring msg=" + msg);
|
||||||
break;
|
break;
|
||||||
@@ -584,7 +600,12 @@ public class WifiService extends IWifiManager.Stub {
|
|||||||
*/
|
*/
|
||||||
public WifiConfiguration getWifiApConfiguration() {
|
public WifiConfiguration getWifiApConfiguration() {
|
||||||
enforceAccessPermission();
|
enforceAccessPermission();
|
||||||
|
if (mWifiStateMachineChannel != null) {
|
||||||
return mWifiStateMachine.syncGetWifiApConfiguration(mWifiStateMachineChannel);
|
return mWifiStateMachine.syncGetWifiApConfiguration(mWifiStateMachineChannel);
|
||||||
|
} else {
|
||||||
|
Slog.e(TAG, "mWifiStateMachineChannel is not initialized");
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user