diff --git a/src/com/android/settings/wfd/WifiDisplaySettings.java b/src/com/android/settings/wfd/WifiDisplaySettings.java index 4022809bff5..21352b7b978 100755 --- a/src/com/android/settings/wfd/WifiDisplaySettings.java +++ b/src/com/android/settings/wfd/WifiDisplaySettings.java @@ -520,7 +520,7 @@ public final class WifiDisplaySettings extends SettingsPreferenceFragment implem if (DEBUG) { Slog.d(TAG, "Setting listen mode to: " + enable); } - mWifiP2pManager.listen(mWifiP2pChannel, enable, new ActionListener() { + final ActionListener listener = new ActionListener() { @Override public void onSuccess() { if (DEBUG) { @@ -534,7 +534,12 @@ public final class WifiDisplaySettings extends SettingsPreferenceFragment implem Slog.e(TAG, "Failed to " + (enable ? "entered" : "exited") + " listen mode with reason " + reason + "."); } - }); + }; + if (enable) { + mWifiP2pManager.startListening(mWifiP2pChannel, listener); + } else { + mWifiP2pManager.stopListening(mWifiP2pChannel, listener); + } } private void setWifiP2pChannels(final int lc, final int oc) {